zl程序教程

您现在的位置是:首页 >  APP

当前栏目

微信小程序开发实战(网路请求Promise化)

2023-03-14 23:00:22 时间

使用 npm 包 - API Promise化

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

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

式调用:

  app(){
    wx.request({
      url: 'url',
      method:'',
      success:()=>{},
      fail:()=>{},
      complate:()=>{}
    })
  }

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

  2、 什么是 API Promise 化

API Promise化,指的是通过额外的配置,将官方提供的、基于回调函数的异步 API,升级改造为基于Promise 的异步 API,从而提高代码的可读性、维护性,避免回调地狱的问题。

 3、 实现 API Promise 化

在小程序中,实现 API Promise 化主要依赖于 miniprogram-api-promise 这个第三方的 npm 包。


安装:npm i --save miniprogram-api-promise@1.0.4


API的Primise化如 👇

// 引入promisifyAll
import {promisifyAll} from 'miniprogram-api-promise'
// 定义成员
const wxp=wx.p={}
// API Promise化
promisifyAll(wx,wxp)

  4、使用

Promise文章链接👉 Promise

使用如下:

  app(){
    //普通网路请求
    wx.request({
      url: 'url',
      method:'',
      success:()=>{},
      fail:()=>{},
      complate:()=>{}
    }),
    //Promise化请求 👉 返回的是一个Promise(解决回调地狱的问题)
    wx.p.request({
      url:'',
      method:'',
      success:()=>{},
      fail:()=>{},
      complate:()=>{}
    })
  }

最后

下篇文章再见ヾ( ̄▽ ̄)ByeBye

image.png