宝哥软件园

微信小程序中使用异步等待方法异步请求变为同步请求方法

编辑:宝哥软件园 来源:互联网 时间:2021-08-26

微信小程序中有些美国石油学会(美国石油协会)是异步的,无法直接进行同步处理。例如:wx.request、wx.showToast、wx.showLoading等。如果需要同步处理,可以使用如下方法:

注意:

异步等待方法属于ES7语法,在小程序开发工具中如果勾选es6转5、会报错:

参考错误:重新生成或直到没有定义时间

避免报错,可以引入改革者

在根目录下创建解放运动文件夹,并将https://github.com/facebook/regenerator/tree/master/packages里面的再生器-运行时间文件夹放进去。

然后在使用异步a瓦特的页面中引入:

//页面/列表/列表。jsconst RegeneratorRuntime=require('././lib/regenerator-runtime/runtime '(9500 . 163.com)

同步处理异步请求

在根目录下新建美国石油学会(美国石油协会)文件夹,里面新建index.js

//请求获取请求const getData=(url,param)={ 0返回新的承诺(解析,拒绝)={ wx.request({ url: url,method: 'GET ',data: param,success(RES){ console。日志解析(RES . data)},失败(err){控制台。日志(错误)拒绝(错误)})}//请求发布请求const postData=(url,param)={ 0返回新承诺(解析,拒绝)={ wx.request({ url: url,method: 'POST ',data: param,success(RES){ console。日志解析(RES . data)},失败(err){控制台。日志(错误)拒绝(错误)})})}//正在加载加载提示const ShowLoAding=()={ 0返回新的承诺(解析,拒绝)={ wx.showLoading({ title: ')加载中.',mask: true,success (res) { console.log('显示正在加载)解析(res) },失败(错误){ 0拒绝(err)} })}//关闭loading const HideLoAding=()={ 0返回新的承诺((解决)={ wx。隐藏加载()}控制台。日志('隐藏正在加载“)(resolve()})}模块。导出={ getData,postData,showLoading,hideLoading}在入口文件app.js中引入:

//app.js const api=require(' ./API/index ')App({ onlaunch : function(){ },//全局数据中暴露api globalData: { api }})在需要使用美国石油学会(美国石油协会)的页面中处理如下:

//页面/列表/列表。jsconst app=GetApp()const API=app。GlobalDATa。Apippage({ OnLoad(){ this。init()},//初始化异步初始化(){等待API。showloading()//显示加载等待this.getList() //请求数据wait api.hideLoading() //等待请求数据成功后,隐藏正在加载},//获取列表getList(){ 0返回新的承诺(解析,拒绝)={ API。getdata(' http://127。0 .0 .1:3000/list ',{ x: ' ',y: '' }).然后((RES)={ this。setdata({ list : RES })控制台。日志解析()}).catch((err)={ console。错误(错误)拒绝(错误)})},})参考:https://www .JB 51。net/article/158645。html文件的后缀

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

更多资讯
游戏推荐
更多+