小程序開發越來越熱,開發中遇到各種各樣的bug,在此總結了一些比較容易掉進去的坑分享給大家。 1. new Date跨平臺兼容性問題在Andriod使用 new Date(“2018-05-30 00:00:00”) 木有問題,但是在ios下面識別不出來。 因為IOS下面不能識別這種格式,需要用 2018/05/30 00:00:00 格式。可以使用正則表達式對做字符串替換,將短橫替換為斜杠。 var iosDate= date.replace(/-/g, '/'); 。 2. wx.getUserInfo()接口更改問題微信小程序最近被吐槽最多的一個更改,就是用戶使用wx.getUserInfo(開發和體驗版)時不會彈出授權,正式版不受影響。現在授權方式是需要引導用戶點擊一個授權按鈕,然后再彈出授權。 解法很長,請參考:
3. 只有在調試模式下,才能發送數據到自己的正式服務器其實,只要注意配置合法域名,這個問題就解決了。有的時候,因為一上來就開發,忘記掉去配置域名。后來發現數據沒法出去,可能半天沒想來忘記配置了! 4. 無法獲取UnionID的問題
5. wx.getSystemInfoSync獲取windowHeight不準確主要原因在于獲取是時機,wx.getSystemInfoSync是在頁面初始化的時候就計算了,基本上可以理解為是屏幕高度。所以,最好的方法是使用異步接口,并且在onReady函數中調用。 onReady() { wx.getSystemInfo({ success({windowHeight}) { // todo } }); } 6. 圖片本地資源名稱,盡量使用小寫命名在解決iPhone X適配時,底部多余部分使用圖片時 <image class='iphonexImg' src="/imgs/iphoneBGT.png" mode="aspectFill">image> 路徑是 src='imgs/iphoneBGT.png' 發現在pc IDE上面可以顯示出來,但是真機調試時,圖片找不到, 然后將圖片名稱改為iphonex.png真機調試就可以了 <image class='iphonexImg' src="/imgs/iphonex.png" mode="aspectFill">image> 寫在最后:代碼總是有各種bug,像上面列舉的問題還是在開發中就可以發現。而代碼上線以后呢,測試也不能保證100%沒有問題。在這里,推薦Fundebug的 微信小程序bug監控服務 給各位老鐵! 關于Fundebug2017年初,小程序還剛上線,Fundebug就支持小程序錯誤監控了。做為最早的小程序錯誤監控服務的拓荒者,累計為數千個小程序提供免費服務,累計處理數千萬小程序錯誤。 |