什么是promise?
1、主要用於異步計算
2、可以將異步操作隊列化,按照期望的順序執行,返回符合預期的結果
3、可以在對象之間傳遞和操作promise,幫助我們處理隊列
封裝promisic:
//回調函數 const promisic = function (n) { return function (t = {}) { return new Promise((c, r) => { const s = Object.assign(t, { success: n => { c(n) }, fail: n => { r(n) } }); n(s) }) } }
調用promise包裝wx.request等這樣在微信小程序里就不需要再一個個寫回調函數了,以簡化代碼:
import { promisic } from '/dist/utils/utils.js' promisic(wx.getStorage)().then(res=>{ console.log(res) //成功 }).catch(err=>{ console.err(err) //失敗(可省略) })
參考鏈接:https://www.jianshu.com/p/1b63a13c2701 這里對promise的講解很全面