1,小程序剛上線的時候,無法直接渲染HTML內(nèi)容。它的原理是將HTML代碼解析成樹形結(jié)構(gòu)的數(shù)據(jù),然后通過小程序的模板來渲染數(shù)據(jù)。
2.富文本。后來增加了“富文本”小程序,顯示富文本內(nèi)容。但是,這個組件有一個巨大的限制:所有節(jié)點的事件都被阻塞在組件中。也就是說,在這個組件中,連一個簡單的功能“預(yù)覽圖”都實現(xiàn)不了。
3.web-view,以及后來的小程序允許通過“Web-view”嵌套網(wǎng)頁組件,通過網(wǎng)頁展示HTML內(nèi)容是最好的兼容方案方案。但是,因為它需要多加載一個頁面,所以性能很差。個人小程序也不會用webview。
1,小程序嵌入式網(wǎng)頁、嵌入式網(wǎng)頁中的跳轉(zhuǎn)鏈接、iframe中嵌套的頁面都必須在安全域名內(nèi),否則無法訪問。如果要在小程序中添加第三方廣告,這一點要注意,因為安全域名的更改次數(shù)是有限制的,需要認證服務(wù)器。還要注意內(nèi)嵌在網(wǎng)頁中的iframe。比如騰訊視頻的iframe嵌入在網(wǎng)頁中,會因為騰訊視頻不在安全域名中而導(dǎo)致頁面無法訪問。
2.用戶信息授權(quán),
3.小程序之間的跳轉(zhuǎn)需要用戶點擊,跳轉(zhuǎn)前需要用戶確認。跳轉(zhuǎn)次數(shù)小程序不要超過10。
4.小程序分為開發(fā)版、體驗版、復(fù)習(xí)版,線上版開發(fā)版是最新版編輯開發(fā)工具;開發(fā)工具上傳后成為體驗版,有體驗權(quán)限的用戶可以查看;開發(fā)版本提交正式審核后,成為審核版本;審計成功后,
5.官方“小程序助手”小程序可以輕松打開所有版本小程序。
6.用戶都需要重新下載新版本。
7.小程序還在更新完善中,舊的代碼可能不符合新政策。為了避免這種情況,應(yīng)該更多地關(guān)注官方公告。
8.版本回滾功能可以將線上版本回滾到之前的版本。
9,小程序使用CommonJS規(guī)范,對ES6有很好的支持。
10,小程序沒有官方的狀態(tài)管理工具,頁面之間的通信依靠傳遞參數(shù)。如果需要復(fù)雜的狀態(tài)管理,
1.用戶微信支付后,需要在后臺向服務(wù)器推送消息,確認支付成功。一個
2.小程序的DOM操作只能查詢屬性,不能設(shè)置屬性。一個
3,小程序基本庫版本與微信版本相關(guān),1
4.小程序中也存在兼容性問題。不想更新的用戶微信要像IE6忠實用戶一樣對待。一個
5.頁面小程序只有onload、onShow、onReady、onHide和onLoad生命周期,但與更新視圖相關(guān)的生命周期1不可用。
6.小程序不能直接渲染。應(yīng)該使用富文本組件,但是組件的性能會下降。一個
7,小程序還有很多原生組件,比如視頻和地圖。原生組件位于最頂層,將阻擋所有非原生組件。還有很多限制,比如不能改變大小,不能添加動畫效果。不過有些組件在最新版本中可以在同一圖層渲染。一個
8,小程序不支持晃動功能,但是可以通過監(jiān)測加速度傳感器來實現(xiàn)。一個
9,小程序有一個官方廣告組件,官方會拿一部分廣告收入。