封装promise请求方式

前言

Promise 是一个 ECMAScript 6 提供的类,目的是更加优雅地书写复杂的异步任务。封装promise方式请求数据,防止当请求过多时出现回调地狱。

1.构造promise方法

代码如下(示例):

复制代码
new Promise(function (resolve, reject) {
    // 要做的事情...
});

2.封装微信小程序promise方法

复制代码
export const request=(params)=>{
    wx.showLoading({
      title: '正在加载...',
      mask:true
    });
  //公共url
  const baseUrl = "请求接口URL";
  return new Promise((resolve,reject)=>{
      wx.request({
        ...params,
        url:baseUrl+params.url,
        method:"get"||"post",
        data:{},
        success:(res)=>{
          if(res.data.code == 200){
            resolve(res)
          }
          else{
            resolve(res)
          }
        },
        fail:(err)=>{
          reject(err);
        },
        complete:()=>{
          ajaxTimes--;
          if(ajaxTimes===0){
            wx.hideLoading()
          }
        }
      })
  })
}
相关推荐
DN金猿15 分钟前
使用npm install或cnpm install报错解决
前端·npm·node.js
丘山子16 分钟前
一些鲜为人知的 IP 地址怪异写法
前端·后端·tcp/ip
投笔丶从戎24 分钟前
Kotlin Multiplatform--01:项目结构基础
android·开发语言·kotlin
志存高远6628 分钟前
Kotlin 的 suspend 关键字
前端
www_pp_41 分钟前
# 构建词汇表:自然语言处理中的关键步骤
前端·javascript·自然语言处理·easyui
YuShiYue1 小时前
pnpm monoreop 打包时 node_modules 内部包 typescript 不能推导出类型报错
javascript·vue.js·typescript·pnpm
杜小暑1 小时前
动态内存管理
c语言·开发语言·动态内存管理
想不明白的过度思考者1 小时前
Java从入门到“放弃”(精通)之旅——JavaSE终篇(异常)
java·开发语言
天天扭码1 小时前
总所周知,JavaScript中有很多函数定义方式,如何“因地制宜”?(ˉ﹃ˉ)
前端·javascript·面试
一个专注写代码的程序媛1 小时前
为什么vue的key值,不用index?
前端·javascript·vue.js