当前位置:   article > 正文

Promise的简单应用(微信小程序版)-解决异步嵌套调用_微信小程序promise的用法

微信小程序promise的用法

Promise的简单应用(微信小程序版)-解决异步嵌套调用
一、定义一个promise工具类(Promise.js)

//封装request请求
const request=function(url,method,params){
   return new Promise(function(resolve,reject){
      wx.request({
        url: url,
        data:params,
        method:method
        success:function(res){
           if(res.data.status==200){
             return resolve(res);
           }else{
              reject(res);
           }
        },
        fail:function(erro){
           reject(erro)
        }
      })
   })
}

module.exports={
   request
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

二、导入到使用的文件,并调用

const { taskList } = require("../../utils/config.js");
const config=require("../../utils/config.js");
const promise=require("../../utils/Promise.js")
const app = getApp();
Page({
  data: {},

  getDato(){
    let that=this
    let params={
      pageNo:that.data.pageNo,
        pageSize:that.data.pageSize,
        taskId:"",
        taskName:"",
        taskUsrId:"",
        taskSts:"1"
    }
    //第一次请求
    promise.request(config.url+config.taskList,'GET',params).then(function(res){
      //第一次请求结果
      console.log("promise结果是",res)
      //第二次请求
      return promise.request(config.url+config.taskList,params)
    }).then(function(res){
        //第二次请求结果
      console.log("对了吗",res)
      //若还有请求继续return一个promise对象,并在后面调用then方法
    })
  },

  onShow() {
    let that=this;
    that.getDato()
  }
})
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35

三、实际效果
在这里插入图片描述
可以看到两个请求都成功了,这里两次请求用的是同一个接口,可以换成不同的接口试试。

四、验证
当将第一次请求的config.taskList后再拼接上一个任意字符使请求报错,那么第二次请求也不会执行,同微信小程序的回调函数效果一致
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/677729
推荐阅读
  

闽ICP备14008679号