位置: 编程技术 - 正文

微信小程序异步处理详解(微信小程序异步回调函数)

编辑:rootadmin

推荐整理分享微信小程序异步处理详解(微信小程序异步回调函数),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:微信小程序异步问题,微信小程序异步回调函数,微信小程序异步回调函数,微信小程序异步存储数据的方法是,微信小程序异步加载,微信小程序异步加载图片,微信小程序异步请求,微信小程序异步请求,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例为大家分享了微信小程序异步处理的具体方法,供大家参考,具体内容如下

直接看问题:

然后看打印的结果:

根据上面两图可以看出,代码上先执行的网络请求,再执行打印的变量,但是从下面打印的结果来看,先出结果的是执行打印变量的函数(aafn函数),再打印出网络请求success的回调里返回的数据和赋值后的变量的值;

为什么先执行的aafn,并且打印的值没有赋值上?

因为wx.request是一个异步的请求,所以数据请求的同时,可以继续向下执行函数。所以这里值还没有赋值上就开始打印了变量的值;

这种情况,怎么解决呢?

方法一:

嵌套

在wx.request的success回调里执行aafn函数

然后运行结果

这里就取到值了

但是如果逻辑很复杂,需要用到很多层异步,就像这样:

微信小程序异步处理详解(微信小程序异步回调函数)

这样代码看起来就很不好看,代码的可读性和可维护性就不好了

那怎么解决这个问题呢?Promise这种概念的产生,很好地解决了这一切,Promise是什么?这里我就不多说了有兴趣的自己去看一看,Promise介绍链接

先看看Promise的方式:

调用

这样的话,异步函数就可以依次执行了

微信小程序的异步API怎么支持Promise呢?我们可以一个一个的用Promise去包装这些API,但是这个还是比较麻烦的。不过,小程序的API的参数格式都比较统一,只接受一个object参数,回调都是在这个参数中设置,所以,这为了统一处理提供了便利,写一个工具方法,来完成这样的工作

首先需要引用一个叫bluebird.js的文件;

进入bluebird官网下载:

这个好像是不能下载的,但是你可以点击进入,然后复制,在小程序里创建一个js文件,将代码复制到这个js里面,然后引用。

然后再写一个JS,里面写工具方法:

下面是prom.js

然后需要使用的那个页面的js里引入prom.js:

调用:

打印结果

这样就可以了,完结。

标签: 微信小程序异步回调函数

本文链接地址:https://www.jiuchutong.com/biancheng/369774.html 转载请保留说明!

上一篇:微信小程序实现选项卡功能(微信小程序实现账号密码登录)

下一篇:fetch 使用及如何接收JS传值(fetch怎么用)

  • 小规模纳税人享受1%的税率
  • 递延所得税负债计算公式
  • 计提城建税怎么算
  • 个人独资企业怎么取钱
  • 个人所得税隔月交么
  • 公司油票怎么抵扣
  • 个人房贷利息抵税
  • 结算金额和付款金额
  • 企业所得税完税凭证在哪里打印
  • 物业公司可以开租赁发票吗
  • 向境外分派红利怎么计算缴纳企业所得税
  • 试用期社保是按照应发工资缴纳吗
  • 收到银行退回的银行汇票多余款
  • 利息收入为什么是负数
  • 未完工的工程款怎么支付
  • 混合销售行为如何界定
  • 利息收入增值税计税依据
  • 小规模没有进项票可以开销项票吗
  • 生产型增值税与消费型增值税的区别在于是否允许企业
  • 国有划拨地是否能转让土地
  • 如果工程款要不到的话怎么办
  • 现金支票怎么背书转让
  • 季度保税企业所得税申报的逾期申报怎么办?
  • 一般个体户核定税率多少
  • 未承兑的商业汇票什么意思
  • 接受国外企业捐款的条件
  • 支付境外关联方借款利息需要的
  • 银行有流水但是没有开票怎么做账
  • 房屋出租收入是多少
  • linux虚拟机怎么输入中文
  • 什么是电力市场
  • php中const
  • Apache+php+mysql在windows下的安装与配置图解(最新版)
  • 重命名电脑名称有什么用
  • win10系统安装详细步骤
  • 对公账户转私人账户手续费多少
  • 代扣代缴企业所得税如何申报
  • 社保缴费基数差1000一般差多少?
  • php filesize
  • 深圳杯2020c题
  • 数据模型 excel
  • 会计利润表计算公式
  • 转出未交增值税怎么算
  • 收到借款时 会计科目怎么做
  • 发现以前年度损益调整怎么记账
  • 招待客户住宿费进项税可以抵扣吗
  • zabbix 网络监控
  • 咨询公司小规模纳税人企业所得税核定征收
  • 计提坏帐包含其他收入吗
  • 打开access自动弹出窗体
  • 签发转账支票需要的单据
  • sql2008降级2005
  • 公司户和个人户交强险一样吗
  • 报销为什么不能打给投保人
  • 营改增土地出让金抵减销售额如何做账及申报纳税的...
  • 企业银行存款属于什么会计要素
  • 建筑装饰行业工业化道路研究参考文献
  • 盈余公积的会计处理
  • 其他非流动资产包括哪些
  • 连接mysql数据的四要素
  • bios如何关闭网卡
  • win10h2版本
  • linux acl设置
  • linux如何使用uname命令
  • linux怎么清除内存
  • win7系统无法安装
  • cocos-creator
  • opengl教程48讲
  • 关于extjs4如何获取grid修改后的数据的问题
  • 安卓开发教学视频
  • 常用的批处理文件
  • linux 查找后缀名文件
  • centos6.5设置网络
  • javascript keyup
  • 个人纳税记录为多少
  • 荆州市物业管理
  • 从事农业种植是什么职业
  • 山东农村土地补贴每亩多少
  • 房产税的计税依据及税率
  • 增值税发票报税流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设