1.微信小程序規(guī)定頁面路徑最多只能是五層,當(dāng)進入第五層頁面之后,wx.navigateTo將不能正常打開新頁面。請避免多層級的交互方式,或者使用如下方式解決:
使用redirectTo代替navigateTo(關(guān)閉當(dāng)前頁面,跳轉(zhuǎn)到應(yīng)用內(nèi)的某個頁面) 注:tab定義過的頁面跳轉(zhuǎn)只能用wx.switchTab跳轉(zhuǎn),wx.navigateTo等跳轉(zhuǎn)無效 2.tabBar圖標(biāo)必須是相對路徑 3.防止重復(fù)提交和打開多個頁面的方法: (1)定義一個data來作為判斷依據(jù),如 bindtap="{{(isConfirmBuy==0)?'':'confirmBuy'}}"(此方法僅針對多次點擊按鈕事件,表單重復(fù)提交無效) (2)根據(jù)點擊事件的時間戳來判斷,如
4.賦值寫法:
5.注意將上傳下載網(wǎng)絡(luò)請求等接口地址設(shè)置白名單。 6.小程序onLaunch里面異步取值導(dǎo)致首頁onload取值取不到的問題 方案:(1)做個啟動頁過度 (2)把下面的方法放到異步請求成功后的success里面
7.小程序之間的跳轉(zhuǎn)問題:(https://mp.weixin.qq.com/debug/wxadoc/dev/api/navigateToMiniProgram.html) (1)相互跳轉(zhuǎn)的小程序必須關(guān)聯(lián)同一個公眾號 (2)小程序跳轉(zhuǎn)需通過extraData傳值和取值,可通過App.onShow()獲取,App.onLaunch()獲取好像拿不到。 8.理論上只有表單提交和支付場景下可以發(fā)送模板消息(表單提交場景下,為 submit 事件帶上的 formId;支付場景下,為本次支付的 prepay_id) (1)支付 當(dāng)用戶在小程序內(nèi)完成過支付行為,可允許開發(fā)者向用戶在7天內(nèi)推送有限條數(shù)的模板消息(1次支付可下發(fā)3條,多次支付下發(fā)條數(shù)獨立,互相不影響) (2)提交表單 當(dāng)用戶在小程序內(nèi)發(fā)生過提交表單行為且該表單聲明為要發(fā)模板消息的,開發(fā)者需要向用戶提供服務(wù)時,可允許開發(fā)者向用戶在7天內(nèi)推送有限條數(shù)的模板消息(1次提交表單可下發(fā)1條,多次提交下發(fā)條數(shù)獨立,相互不影響) 實際應(yīng)用時可以通過模擬表單提交獲取多個formId再保存下來,這樣7天之內(nèi)就可以隨時給用戶發(fā)送模板消息,以實現(xiàn)批量發(fā)送的效果。如:
9.map、canvas、video、textarea 是由客戶端創(chuàng)建的原生組件,原生組件的層級是最高的,所以頁面中的其他組件無論設(shè)置 z-index 為多少,都無法蓋在原生組件上。 原生組件暫時還無法放在 scroll-view 上,也無法對原生組件設(shè)置 css 動畫 10.微信小程序showToast都是帶icon的,如果需要不帶icon的toast需要自己封裝 11.wx.showModal微信自帶對話框,content不支持html類型數(shù)據(jù),僅支持txt,支持\n\r,所以擴展性不好。(復(fù)雜情況下推薦自己寫) 12.連續(xù)快速點擊input獲取焦點后馬上點擊按鈕,input不會失去焦點鍵盤不會收起,應(yīng)用場景如發(fā)送驗證碼。 13.微信小程序授權(quán)問題:如果拒絕授權(quán),短時間內(nèi)微信不會重新調(diào)起授權(quán)框讓用戶重新授權(quán)。 處理方案:1.判斷用戶授權(quán)操作,如果拒絕,彈出確認(rèn)框提示用戶“將無法正常使用小程序,建議刪除小程序重新進入或者手動授權(quán),是否手動授權(quán)?”,用戶點擊確定,跳到設(shè)置界面,手動授權(quán),用戶點擊取消,跳到取消授權(quán)頁面(需開發(fā)) |