文章目录
一、基于回调函数的异步API的缺点
默认情况下,小程序官方提供的异步 API 都是基于回调函数实现的,例如,网络请求的 API需要按照如下的方式调用:
缺点:容易造成回调地狱的问题,代码的可读性、维护性差!
二、什么是API Promise化
三、实现API Promise化
3.1. 安装依赖
在小程序中,实现
API Promise
化主要依赖于miniprogram-api-promise
这个第三方的npm
包。它的安装和使用步骤如下:
npm install --save miniprogram-api-promise@1.0.4
3.2. 删除项目中原来构建的miniprogram_npm
3.3. 重新构建npm
3.4. 为什么需要构建npm
因为小程序里面无法直接读取
node_modules
,需要构建npm
,把node_modules
里面的包迁移到miniprogram_npm
3.5. 为什么建议删除旧的miniprogram_npm
重新构建?
不删除直接构建很容易构建失败
3.6. app.js中注入
// 在小程序入口文件中(app.js),只需调用一次 promisifyAlI() 方法,
// 即可实现异步 API 的 Promise 化
import {
promisifyAll
} from 'miniprogram-api-promise'
const wxp = wx.p = {}
promisifyAll(wx, wxp)
#3.7. 使用
async getInfo() {
const {
data: res
} = await wx.p.request({
method: 'GET',
url: 'https ://ww.escook.cn/api/get',
data: {
name: 'zs',
age: 20
}
})
console.log(res);
},