返回頂部
關閉軟件導航
位置:首頁 > 資訊 > 電商資訊>JDC京東設計中心--小程序實戰總結
JDC京東設計中心--小程序實戰總結

本文從小程序框架、api、組件、應用四個方面入手,說明在開發過程中碰到的問題,并給出處理方案。

小程序雖然具有相對完善的文檔,但難免文檔中會有解釋不清楚,不易被人發現,甚至未曾提及的問題。本文從具體的業務場景出發,匯總筆者在原生小程序日常開發中碰到的常見問題,并給出相應的解決方案,希望能夠將這些細節經驗分享給需要的童鞋。

框架

運行機制與更新機制

運行機制:

小程序啟動會有兩種情況,一種是「冷啟動」,一種是「熱啟動」。假如用戶已經打開過某小程序,然后在一定時間內再次打開該小程序,此時無需重新啟動,只需將后臺態的小程序切換到前臺,這個過程就是熱啟動;冷啟動指的是用戶首次打開或小程序被微信主動銷毀后再次打開的情況,此時小程序需要重新加載啟動。

小程序沒有重啟的概念。

當小程序進入后臺,客戶端會維持一段時間的運行狀態,超過一定時間后(目前是5分鐘)會被微信主動銷毀。

當短時間內(5s)連續收到兩次以上收到系統內存告警,會進行小程序的銷毀。

更新機制:

小程序冷啟動時假如發現有新版本,將會異步下載新版本的代碼包,并同時用客戶端本地的包進行啟動,即新版本的小程序需要等下一次冷啟動才會應用上。假如需要馬上應用很新版本,可以使用wx.getUpdateManagerAPI進行處理。

雖然文檔中有對這一部分進行說明,但是隱蔽比較深,還是需要重點說明一下,理解運行機制就可以解釋為什么剛關閉的小程序打開之后還能保存之前的狀態,理解更新機制就明白新發版的小程序為什么需要刪除舊的版本再下載新的版本再能有新版的內容了。

如何清除小程序緩存呢?

通過太空囊’…’按鈕—打開調試—console—wechat—wx.clearStorage()方法清除,此方法刪除storage中的數據。

通過微信的”發現”tab簽—小程序—長按或者右滑刪除指定小程序,此方式徹底卸載該小程序,也就清除了所有內容,包括storage中緩存數據、場景值、頁面堆棧等。

預覽與遠程調試的區別

小程序的調試方式有多種,可以通過預覽亦可通過遠程調試,這兩者有何區別呢?

將兩者生成的二維碼轉為url:

預覽URL為:s://mp.weixin.qq.com/a/~~xxt10QprXmU~rsguk7Cm9P3v2MCXJdpacg~~

遠程調試URL為:s://mp.weixin.qq.com/a/~~Rot_QPKUIn8~mzI5kQoA3w4QN0H6nkejvQ~~

由此可見工作方式都為將本地小程序打包上傳至微信側,掃碼訪問遠程小程序服務。不同點總結如下:

可以有多臺真機同時預覽,只能有一臺真機遠程調試。

預覽忽略斷點,遠程調試會有斷點。

預覽可以忽略部分報錯,遠程調試有報錯將無法運行。

生命周期

生命周期又分頁面的生命周期與組件的生命周期,以頁面的生命周期為例,不同的生命周期會對應不同的生命周期方法。

onLoad:頁面加載,一個頁面只會調用一次。

onShow:頁面顯示,每次打開頁面都會調用一次。

onReady:頁面初次渲染完成,一個頁面只會調用一次,代表頁面已經預備妥當,可以和視圖層進行交互。

onHide:頁面隱藏,當navigateTo或底部tab切換時調用。

onUnload:頁面卸載。

進行頁面編碼之前需要考慮到哪些數據是只需要加載一次的(放到onload中),哪些數據需要每次在頁面切換出來的時候進行實時更新(放到onShow中執行)。

Api

setData:

賦值操作是做常用的操作,可是對不同類型的數據賦值方式又稍有不同:

給字符串賦值:str:’value’

對象屬性賦值:[‘obj.prop’]:’value’

數組中的對象的屬性賦值:[‘arr[0].prop’]:’value’

需要注重的是:setData方法為異步方法,如不注重,頁面渲染會出現異常,因此不要將頁面中所有的數據都放到data對象中,只將頁面展示層的數據放到data中,其他不需要展示的數據掛載到全局this中即可。

JDC京東設計中心--小程序實戰總結1

chooiceVideo視頻封面問題:

在wx.chooseVideo的回調函數中,res中會有thumbTempFilePath屬性值,該屬性值為封面圖片,問題是在模擬器中可以獲取到該屬性但是在真機中無法獲取到該屬性。目前獲取封面圖的方式通常為后端處理獲取。

組件

Video

如果您覺得 JDC京東設計中心--小程序實戰總結 這篇文章對您有用,請分享給您的好友,謝謝
文章地址:http://www.meyanliao.com/article/online/11309.html
解放雙手無盡可能,有問題添加天線貓微信
主站蜘蛛池模板: 少妇人妻av无码专区| 人妻无码久久精品| 亚洲AV无码成人精品区狼人影院| 一本无码人妻在中文字幕免费| 乱人伦人妻中文字幕无码| 国产成人无码一区二区三区 | 国产强伦姧在线观看无码| 无码专区中文字幕无码| 全免费a级毛片免费看无码| 国产成人午夜无码电影在线观看| 国产品无码一区二区三区在线| 久久精品无码免费不卡| 国产成年无码久久久久下载| 无码精品人妻一区二区三区人妻斩| 好爽毛片一区二区三区四无码三飞| 久久久久亚洲AV无码永不| 亚洲一区无码精品色| 免费无码国产在线观国内自拍中文字幕 | 久久久g0g0午夜无码精品| 无码中文字幕乱在线观看| 无翼乌工口肉肉无遮挡无码18| 亚洲AV无码国产精品永久一区| 无码人妻精品一区二区三区东京热| 亚洲中文字幕无码中文字在线| 久久国产精品成人无码网站| 亚洲精品无码人妻无码| 无码国产精品一区二区免费| 久久精品无码一区二区无码| 国产精品无码无在线观看| 国产日韩AV免费无码一区二区| 精品人妻系列无码人妻免费视频 | 中文字幕无码中文字幕有码| 亚洲AV无码专区国产乱码4SE | 久久亚洲AV无码精品色午夜| 国模无码人体一区二区| 成人免费无码大片a毛片软件| 国产精品一级毛片无码视频| 国产亚洲精久久久久久无码| 亚洲av永久无码嘿嘿嘿 | 在线看片无码永久免费视频| 亚洲av无码av在线播放|