美文网首页
API Promise化(微信小程序学习day32)

API Promise化(微信小程序学习day32)

作者: 扶得一人醉如苏沐晨 | 来源:发表于2023-12-20 09:05 被阅读0次

一、基于回调函数的异步API的缺点

默认情况下,小程序官方提供的异步 API 都是基于回调函数实现的,例如,网络请求的 API需要按照如下的方式调用:

image.png

缺点:容易造成回调地狱的问题,代码的可读性、维护性差!

二、什么是API Promise化

image.png

三、实现API Promise化

3.1. 安装依赖

在小程序中,实现 API Promise 化主要依赖于 miniprogram-api-promise 这个第三方的 npm 包。它的安装和使用步骤如下:

npm install --save miniprogram-api-promise@1.0.4

3.2. 删除项目中原来构建的miniprogram_npm

image.png

3.3. 重新构建npm

image.png

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);
    },

相关文章

网友评论

      本文标题:API Promise化(微信小程序学习day32)

      本文链接:https://www.haomeiwen.com/subject/dhebwdtx.html