摘要:化的原因微信小程序的用的是對象參數(shù)回調(diào)模式很容易造成回調(diào)地獄代碼難以閱讀判斷修改和調(diào)試微信小程序示例獲取用戶信息已經(jīng)授權(quán),可以直接調(diào)用獲取頭像昵稱,不會彈框可以將發(fā)送給后臺解碼出可以看出兩層的時候代碼就很別扭了化小程序編寫一個可以小程序的公
promise化的原因
微信小程序的api用的是對象參數(shù)回調(diào)模式,很容易造成回調(diào)地獄,代碼難以閱讀,判斷,修改 和調(diào)試.
微信小程序api示例// 獲取用戶信息 wx.getSetting({ success: res => { if (res.authSetting["scope.userInfo"]) { // 已經(jīng)授權(quán),可以直接調(diào)用 getUserInfo 獲取頭像昵稱,不會彈框 wx.getUserInfo({ success: res => { // 可以將 res 發(fā)送給后臺解碼出 unionId this.globalData.userInfo = res.userInfo } }) } } })
可以看出兩層的時候,代碼就很別扭了
promise化小程序編寫一個可以promise小程序api的公用函數(shù)
function promisify (method, options = {}) { return new Promise((resolve, reject) => { // 將options對象賦值 然后再傳給下面調(diào)用的方法中 options.success = resolve options.fail = err => { reject(err) } wx[method](options) }) }使用示例
傳遞的額外參數(shù)通過對象解構(gòu)方式傳遞
promisify("getUserInfo") .then((res) => console.log(res)) .catch((err) => {console.error(err)}) promisify("navigateTo", { url })
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/94167.html
摘要:最后的目的是能滿足所有微信小程序開發(fā)者的需求,全面覆蓋小程序開發(fā)。像開發(fā)一樣,用開發(fā)微信小程序。 項目地址:wn-cli wn-cli wn-cli 像React組件開發(fā)一樣來開發(fā)微信小程序 名字由來:wn -> weapp native 取第一個字母 Install npm install wn-cli --save-dev // 或者 yarn add wn-cli --dev U...
摘要:微信官方?jīng)]有給出來處理異步操作,而官方異步的又非常多,這使得多異步編程會層層回調(diào),代碼一復(fù)雜,回調(diào)起來就想砸電腦。是一個轉(zhuǎn)換微信小程序異步為的一個工具庫優(yōu)點避免小程序異步編程多次回調(diào)帶來的過多回調(diào)導(dǎo)致邏輯不清晰,篇幅過長等問題。 把微信小程序異步API轉(zhuǎn)化為Promise。用Promise處理異步操作有多方便,誰用誰知道。微信官方?jīng)]有給出Promise API來處理異步操作,而官方AP...
摘要:下一步準(zhǔn)備使用網(wǎng)易云代替音樂。已經(jīng)開發(fā)新的網(wǎng)易云代替音樂了,需要的可以看看這篇文章為微信小程序開發(fā)的網(wǎng)易云音樂庫 項目要做一個可以為日記添加音樂的小程序,所以要用到音樂api,參考了一些文章后我們封裝了一個qq音樂api庫(完成了動態(tài)token獲取,音樂搜索,音樂專輯圖片,音樂名稱,歌手名稱,播放),有需要的可以到Github自提。 小程序qq音樂api庫Gihub地址https://...
摘要:其實我們在同步流程中才說返回,異步?jīng)]有返回這個概念或者說異步返回是沒有意義的,異步對應(yīng)的是回調(diào),也就是說,對于一個異步函數(shù),我們應(yīng)該傳入一個回調(diào)函數(shù)來接收結(jié)果。 原文鏈接:https://www.xksblog.top/talk-... 見到wx.request的第一眼,就讓我想起了$.ajax這東西,使用起來確實有很多不方便,不能忍,幸好小程序是支持ES6語法的,所以可以使用pro...
摘要:了解什么是對象在項目中,會出現(xiàn)各種異步操作,如果一個異步操作的回調(diào)里還有異步操作,就會出現(xiàn)回調(diào)金字塔?;卣{(diào)金字塔的簡化效果那么再來看看最開始的那個回調(diào)金字塔登錄請求獲取請求可以看到簡化效果非常明顯。同樣適用于網(wǎng)頁或者等中。 showImg(https://segmentfault.com/img/remote/1460000013228704); 了解什么是 Promise 對象 在項...
閱讀 2480·2021-11-16 11:44
閱讀 2017·2021-10-12 10:12
閱讀 2308·2021-09-22 15:22
閱讀 3075·2021-08-11 11:17
閱讀 1573·2019-08-29 16:53
閱讀 2718·2019-08-29 14:09
閱讀 3535·2019-08-29 14:03
閱讀 3406·2019-08-29 11:09