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