uni-app 使用HTML5+的注意事項

2020-04-02 15:10 更新

uni-app App 端內(nèi)置 HTML5+ 引擎,讓 js 可以直接調(diào)用豐富的原生能力。

  • 條件編譯調(diào)用 HTML5+

小程序及 H5 等平臺是沒有 HTML5+ 擴展規(guī)范的,因此在 uni-app 調(diào)用 HTML5+ 的擴展規(guī)范時,需要注意使用條件編譯。否則運行到h5、小程序等平臺會出現(xiàn) plus is not defined錯誤。

// #ifdef APP-PLUS
var appid = plus.runtime.appid;
console.log('應用的 appid 為:' + appid);
// #endif
  • uni-app不需要 plus ready 在html中使用plus的api,需要等待plus ready。 而uni-app不需要等,可以直接使用。而且如果你調(diào)用plus ready,反而不會觸發(fā)。
  • uni-app 中的事件監(jiān)聽

在普通的 H5+ 項目中,需要使用 document.addEventListener 監(jiān)聽原生擴展的事件。

uni-app 中,沒有 document??梢允褂?nbsp;plus.globalEvent.addEventListener 來實現(xiàn)(注意manifest中需開啟新編譯器,即自定義組件模式"usingComponents":true)。

// #ifdef APP-PLUS
// 監(jiān)聽設備網(wǎng)絡狀態(tài)變化事件
plus.globalEvent.addEventListener('netchange', function(){});
// #endif

同理,在 uni-app 中使用 Native.js 時,一些 Native.js 中對于原生事件的監(jiān)聽同樣需要按照上面的方法去實現(xiàn)。

注意:舊編譯器(非自定義組件模式)不支持 plus.globalEvent 這個對象。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號