您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

微信小程序的wx.request与Promise的结合使用

2024/4/25 0:32:40发布3次查看
这次给大家带来微信小程序的wx.request 与promise的结合使用,微信小程序的wx.request与promise结合使用的注意事项有哪些,下面就是实战案例,一起来看一下。
在使用promise,我的多次异步代码通常是这样的.
ajax(url, function (res){     ajax(res.url, function(res) {         ajax(res.url, function(res) {            if (res.status == '1') {                 ajax(res.url, function(res) {                 ...                 }             }            else if (res.status == '2') {                 ajax(url2, function(res) {                 ...             }             ...         }     } } );
这种流程是很耗费心力并且脆弱的,体验很糟糕,因此,在这次小程序的开发中为了更好的体验,我开始使用了promise.
代码如下,这样一来,当我们第二个请求需要第一个参数判断时,可以不再陷入回调地狱,
// 小程序与后端情求接口     let baseurlpromise = 'https://xxx.com';    // 定义方法返回promise参数,obj 为wx.request 方法中所需参数     let req = function (obj) {      return new promise(function (resolve, reject) {         wx.request({           url: baseurlpromise + obj.url,           data: obj.data,           header: obj.header,           method: obj.method == undefined ? get : obj.method,           success: function (data) {            // 回调成功执行resolve            resolve(data)           },           fail: function (data) {            // 回调失败时             if (typeof reject == 'function') {               reject(data);             } else {               console.log(data);             }           },         })       })     }    // 执行req 方法,传入第一个请求,     let req1 = req({       url: '第一次请求链接,与baseurlpromise 相结合',       data: {},     })    // 当需要多次请求时加入     req1.then(function (data) {       console.log('promisethen1')       console.log(data);      return req({         url: '第二次请求链接',       })     }).then(function (data) {       console.log('promisethen3')       console.log(data);      return req({         url:'第三次请求链接'       })    }).then(......).catch(function(data){       console.log(promisecatch)    })
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
vue指令的使用
js闭包的使用
以上就是微信小程序的wx.request与promise的结合使用的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录