開發小程序(填坑之路,遇到一點就更新一點)
阿新 • • 發佈:2018-07-05
頁面 for page 開發工具 sign 上傳 nco lse tor
1.開發小程序發送請求時,報錯不在以下合法列表中:
在開發工具詳情中設置:
請參考微信官方文檔:關於小程序網絡相關API說明
2.如果你需要權限驗證(如登錄後訪問),小程序不像瀏覽器能幫你自動攜帶cookie信息,那麽你需要自己寫在將cookie寫入請求hedear中,不然每次請求都通不過權限驗證。
wx.request({ url: `${API_URL}/${type}`, data: Object.assign({}, params), method: ‘POST‘, header: { ‘cookie‘: wx.getStorageSync(‘cookie‘)[0],‘Content-Type‘: ‘application/json‘, ‘content-type‘: ‘application/x-www-form-urlencoded;charset=UTF-8‘ }, success: function(res){ wx.hideLoading(); if (res.header[‘Set-Cookie‘]) { //提取cookie,保存到storage中 var setCookie = res.header[‘Set-Cookie‘].replace(newRegExp(‘Path=/‘), ‘‘).split(‘,‘) console.log(‘cookies:‘ + setCookie); }
}
})
3.小程序下載文件保存本地,需要配置可信域名和https,並且下載的文件根本在手機獲取不到。
4.打開頁面過多導致內存占用過高。
navigateTo跳轉打開新頁面最多10層。wx.navigateTo(OBJECT)
保留當前頁面,跳轉到應用內的某個頁面,使用wx.navigateBack可以返回到原頁面。 建議跳轉5層後使用wx.redirectTo(OBJECT)
關閉當前頁面,跳轉到應用內的某個頁面,釋放內存。globalJump: function (url) { var pageLevel = getCurrentPages().length; if (typeof url == ‘string‘) { url = url } else { url = url.currentTarget.dataset.url; } if (pageLevel < 4) { wx.navigateTo({ url: url }) } else { wx.redirectTo({ url: url }); } }
5. 頁面滾到底部加載數據
不要使用scrollview。使用Page中的onReachBottom
6. 頁面內使用setTimeIntervar跳轉後定時器不會關閉導致報錯
使用外部方法,判斷頁面是否已經跳轉
彩蛋:需要在真機上測試可以點擊預覽也可以上傳為開發版本。
開發小程序(填坑之路,遇到一點就更新一點)