微信小程序补天笔记
使用wepy開發(fā)
小程序的組件修改不能出發(fā)頁面更新
需要在父級文件上保存下才會觸發(fā)
接口請求出現(xiàn)的問題?
記得勾選調(diào)試開發(fā)工具上 不校驗(yàn)合法域名
跳轉(zhuǎn)頁面不生效?
頁面棧最多支持5層,超過5層無法后退
navigateTo, redirectTo 只能打開非 tabBar 頁面。
switchTab 只能打開 tabBar 頁面。
reLaunch 可以打開任意頁面。
onload只會在頁面加載時候執(zhí)行,比如用navigateBack回到之前的頁面的時候,之前那個頁面不會再執(zhí)行onload,所以我們要觸發(fā)某些函數(shù)的時候,我們可以放在onshow里面,即使是navigateBack回來也會執(zhí)行
點(diǎn)擊用戶頭像跳轉(zhuǎn)頁面
open-data上面不能綁定事件,簡單實(shí)現(xiàn)可以用navigator包裹open-data,不用寫js代碼即可實(shí)現(xiàn)點(diǎn)擊跳轉(zhuǎn)頁面。navigator相當(dāng)于html的a元素,默認(rèn)為inline,可修改display樣式為block
<navigator/> 組件屬性 openType。可選值 'navigate'、'redirect'、'switchTab',對應(yīng)于wx.navigateTo、wx.redirectTo、wx.switchTab的功能
需要在Page中添加onShareAppMessage方法,否則點(diǎn)右上角菜單不會出現(xiàn)轉(zhuǎn)發(fā)選項(xiàng)
除了右上角菜單外,可以使用open-type="share"的按鈕
可以通過onShareAppMessage的參數(shù)中的from字段區(qū)分事件來源是菜單menu還是按鈕button
通過onShareAppMessage方法返回的對象來定制轉(zhuǎn)發(fā)界面顯示的內(nèi)容
在原來的分享接口中,用戶發(fā)起分享動作之后,可以通過 success 、fail、complete等回調(diào)來判斷用戶是否完成了最后的分享動作。老代碼也是分享成功的通過分享success回調(diào)函數(shù)內(nèi)打log的記錄。由于官方后來取消了這個功能,所以分享的打點(diǎn)要放到外面來。
canvas要進(jìn)行繪制,則canvas組件必須真實(shí)地被寫在頁面上,而且其wx:if不能為false。
canvas是原生組件,層級是最高的,所以頁面中z-index設(shè)置不生效。
于是把canvas放置在屏幕之外,如設(shè)置position:fixed;left:750rpx;
canvas的api,在頁面中,api的參數(shù)this不是必填的,在組件中就是必填的
在繪制canvas時,由于draw是異步操作,需要把canvasToTempFilePath寫到draw成功的回調(diào)里(起初是繪制內(nèi)容少很快,用同步寫也不會出問題)
繪制出來的圖片如果覺得有點(diǎn)糊,請在canvas中等比例放大繪制尺寸~
但是也不能太大,不然在安卓上會有bug(限制范圍貌似在2000px)。
tabBar的層級還是很高的,當(dāng)出現(xiàn)全屏蒙版彈窗時,是無法蓋住tabBar的,
可以調(diào)用微信的hidetabbar,不過需要注意兼容低版本
測試部分
有些功能是版本限制的,開發(fā)者工具的基礎(chǔ)庫版本可以調(diào)整,但是無法設(shè)置微信版本,還是需要真機(jī)。
掃秒新生成的二維碼會跳轉(zhuǎn)到線上的鏈接,
以前是測試的時候需要用微信開發(fā)者工具來測試在編譯模式,把二維碼的具體信息添加進(jìn)去
在最新的開發(fā)工具中,有一項(xiàng) 二維碼編譯 模式,解決了跳轉(zhuǎn)線上小程序鏈接的問題
開發(fā)者工具上看效果沒問題,但是在真機(jī)上測試不行?
一般說來都是真機(jī)緩存的影響,微信開發(fā)者工具是可以一鍵清理全部緩存
安卓和ios的上一般都是刪除這個小程序(注意 不是刪除使用記錄)
再有就是,刪除完畢后可以進(jìn)入小程序的設(shè)置選項(xiàng)查看權(quán)限的開關(guān)來確定是否真的完全清除。
如果清除緩存后還有問題,這時候就需要使用vConsole了
開發(fā)版和體驗(yàn)版可以點(diǎn)擊小程序頁面右上角的...按鈕打開的菜單項(xiàng)“打開調(diào)試”來開啟 vConsole
正式版沒有“打開調(diào)試”的菜單項(xiàng),可以先通過開發(fā)版和體驗(yàn)版來開啟 vConsole,然后再打開正式版。
或者預(yù)埋一個隱藏操作,比如連續(xù)點(diǎn)擊某個 Button 多次,然后調(diào)用 API 接口 wx.setEnableDebug 來打開。
vConsole一般用來看有無報錯,如果是簡單的問題,咱們直接修改代碼就可以改好了了
復(fù)雜的情況還需要調(diào)試,手機(jī)畢竟看日志不方便,也不能斷點(diǎn)調(diào)試、修改樣式
此時需要借助遠(yuǎn)程調(diào)試來快速定位復(fù)雜問題~
使用開發(fā)者工具的遠(yuǎn)程調(diào)試窗口只要用手機(jī)掃一掃就可以連通手機(jī)和模擬器之間的數(shù)據(jù)鏈接,調(diào)試的上下文會自動切換到 VM Context 1
發(fā)布部分
上傳代碼的話,需要勾選 樣式自動補(bǔ)全
一次沒通過,請再提交一次。
轉(zhuǎn)載于:https://juejin.im/post/5bc099e05188255c8255382c
總結(jié)
- 上一篇: Bootstrap – 1.认识
- 下一篇: Iptables 入门进阶