微信小程序踩坑指南--回填再造

一寫小程序前端深入坑,踩着問題的‘屍體’爬了上來。奮鬥一個多月,需求,設計,前端一體成型的項目終於上線,特此總結一下,以示激勵。。。

說到小程序的坑,第一個想要吐槽的就是它的api文檔,分區也太‘微信’了吧,找到這個再跳到某個,感覺找個文檔還挺費時間的,需要多點耐心,多點愛心。

第二個想說的點是:app.js 與 page.js的生命週期是同步的,因此,如果你想在頁面加載之前做點異步加載有關的事情,那將會收穫絕望的心情,比如在app.js先拿到登錄驗證信息再讓頁面的接口請求繼續

第三個槽點是: wx.showToast,如果你想直接提示數字,那麼恭喜你即將收穫紅色錯誤,請記得轉換成string

第四個想說的是:如果你想授權獲取用戶信息,除了使用微信用戶頭像等專屬展示控件這種僅用於展示的情況外,如果需要永久保存,那麼建議是使用open-type="getUserInfo"的button。調出來的彈窗,開發者工具跟真機有些差異,限今天發文章前,過了這個點,不知道會不會改,如有雷同,純屬意外

第五個槽點:如果你用了localstorage存了object的話,那麼請注意模擬器跟真機差異性,謹慎使用JSON.parse跟JSON.stringify,建議加這個判斷 Object.prototype.toString.call(localObject) === '[object Object]'

第六個想說的是:如果頁面配置了tabbar,那switchTarbar默認不刷新的喔,如有必要,可以百度,另外,頁面傳參不會生效的喲

第七個槽點:這個只能吐自己的槽,頁面傳參事件如果寫了而且需要關閉頁面,那麼請不要使用wx.navigateTo跳回來,不然,它會死給你看,最好是直接關閉頁面或者返回頁面。雖然效果一樣,但結果有可能會讓你吐血。。。

第八個想說的是:可信域名這些提前準備好,有授權的地方,建議在項目設計之初,先考慮微信的限制,不然,需求一旦形成,後期吐血的會是你。。。

第九個友情提示:多用es6,你會發現一個新的世界。。。

再來一個:wx.requestSubscribeMessage消息訂閱,如果用戶沒有選擇同意,那麼作爲一次性授權,那在回調的res當中是拿不到需要的參數的,切記,api有寫,注意真機跟開發者工具的差異,在用戶交互上,多考慮一下用戶,這功能實現起來需要保持合理。。。

當然,有些槽點可能是自已經驗不足導致的,不管怎麼說,記錄下來,希望疫情快快退散,世界和平!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章