微信公眾號(hào)頁(yè)面開(kāi)發(fā)遇坑指南

框架選擇:習(xí)慣用VUE的話(huà)就選擇VUX吧,集成度高,文檔詳細(xì)等等,都是優(yōu)點(diǎn)。
首先,既然是移動(dòng)端頁(yè)面,第一個(gè)逃不過(guò)的坑就是頁(yè)面適配問(wèn)題了。
1、大家可能第一想到的是rem單位,貌似很多人認(rèn)為這個(gè)單位是解決該問(wèn)題萬(wàn)能的,其實(shí)不是,這個(gè)方式并不是最好的方式。

html{
    font-size:625%
}

2、還有一種就是利用js動(dòng)態(tài)給html和body加font-size,大家一定想到的是lib-flexible這個(gè)庫(kù)了(不清楚的自己百度)。這是個(gè)不錯(cuò)的解決方案(配合第一種方式),之前淘寶也在用,不過(guò)現(xiàn)在基本可以放棄了。
3、最后一種,也是我現(xiàn)在用的,可參考這篇文章,說(shuō)的已經(jīng)非常詳細(xì)了。

說(shuō)完適配這個(gè)坑,接著說(shuō)說(shuō)一些神奇的坑。
1、微信在進(jìn)入后臺(tái)的時(shí)候,當(dāng)你的頁(yè)面還打開(kāi)著,并且你的某些ajax請(qǐng)求是在這之后發(fā)起的,你可能要問(wèn)什么樣的請(qǐng)求會(huì)在這個(gè)時(shí)候發(fā)起呢,舉個(gè)例子:

document.addEventListener('visibilitychange',async ()=>{
    if (document.visibilityState === 'hidden') {    //改為visible
        this.$get('/api/...').then(res=>{ })
    }
});

當(dāng)有些操作是在你判斷頁(yè)面可見(jiàn)性的時(shí)候請(qǐng)求的,這時(shí)候ajax請(qǐng)求是不會(huì)成功的,用Pormise的時(shí)候回直接被catch到,解決方法就是把請(qǐng)求放在document.visibilityStatevisible的時(shí)候,或者盡量避開(kāi)這樣的設(shè)計(jì)。
2、關(guān)于頁(yè)面后退不刷新問(wèn)題。
當(dāng)你在頁(yè)面執(zhí)行history.back()方法的時(shí)候,頁(yè)面是不會(huì)刷新的,如果想要刷新解決方式有很多,比如location.replace(document.referrer),方式百度一下就有很多,可選擇你想要的一個(gè)就行。
3、微信頁(yè)面存在獨(dú)有的瀏覽器api
第一次做微信公眾號(hào)頁(yè)面的時(shí)候還不知道有這個(gè)東西,直到產(chǎn)品經(jīng)理說(shuō)希望能實(shí)現(xiàn)點(diǎn)擊底部的返回按鈕(ios)的時(shí)候,能關(guān)閉頁(yè)面回到聊天界面。查了查資料發(fā)現(xiàn),微信瀏覽器環(huán)境下有很多獨(dú)有的api。具體有哪些可以參考這個(gè)網(wǎng)址,當(dāng)然有些可以通過(guò)jssdk實(shí)現(xiàn)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML標(biāo)準(zhǔn)。 注意:講述HT...
    kismetajun閱讀 28,878評(píng)論 1 45
  • 問(wèn)答題47 /72 常見(jiàn)瀏覽器兼容性問(wèn)題與解決方案? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,193評(píng)論 1 92
  • 上兩個(gè)星期做了一個(gè)公司用于推廣的小活動(dòng),選擇了Vue的單頁(yè)面應(yīng)用?!綱ue單頁(yè)面應(yīng)用+微信網(wǎng)頁(yè)開(kāi)發(fā)】套餐贈(zèng)送了超值...
    大瑜_HiJack閱讀 8,620評(píng)論 5 33
  • vue去哪網(wǎng)跟學(xué)筆記 記錄學(xué)習(xí)點(diǎn)滴 1. 初始化項(xiàng)目 1.1 手機(jī)顯示配適 minimum-scale=1.0,m...
    noobakong閱讀 2,429評(píng)論 0 16
  • 葛林戴華德喜歡研究黑魔法,倒不是說(shuō)他非要拿來(lái)做點(diǎn)什麼壞事,就像有些巫師癡迷研發(fā)新藥水,任何一種力量都能在適當(dāng)時(shí)候派...
    十字路口霉少年閱讀 350評(píng)論 1 0

友情鏈接更多精彩內(nèi)容