官方文档中提供了miniprogram-api-promise插件,
npm install --save miniprogram-api-promise
在小程序入口(app.js)调用一次promisifyAll,只需要调用一次。
// app.js
import { promisifyAll } from 'miniprogram-api-promise'
// 创建 wxp 变量 以及 wx.pro 即微信自定义属性
// 将 wxp 和 wx.pro 指向一个空对象
// 因为对象是引用类型的数据,所以 wxp 和 wx.p 指向同一个内存空间
const wxp = (wx.p = {})
// 将 wx 的方法挂载到 wxp 这个对象中
promisifyAll(wx, wxp)
App({
//onLaunch,onShow: options(path,query,scene,shareTicket,referrerInfo(appId,extraData))
onLaunch: function (options) {},
onShow: function (options) {},
onHide: function () {},
onError: function (msg) {},
//options(path,query,isEntryPage)
onPageNotFound: function (options) {},
globalData: {}
})
// page.js
// 1 获取 权限状态
const res1 = await wx.p.getSetting()