uni-app判斷運行的平台


1,編譯期判斷(條件編譯,代碼塊中的代碼只會編譯到對應的發行包里)

  ①例如:

// #ifdef H5
    alert("只有h5平台才有alert方法")
// #endif
// #ifndef H5
    alert("除了h5平台之外的其他平台才有的方法")
// #endif

  ②//#ifdef %PLATFORM% //#endif 可以使用的值

生效條件
VUE3 HBuilderX 3.2.0+ 詳情
APP-PLUS App
APP-PLUS-NVUE或APP-NVUE App nvue
H5 H5
MP-WEIXIN 微信小程序
MP-ALIPAY 支付寶小程序
MP-BAIDU 百度小程序
MP-TOUTIAO 字節跳動小程序
MP-LARK 飛書小程序
MP-QQ QQ小程序
MP-KUAISHOU 快手小程序
MP-360 360小程序
MP 微信小程序/支付寶小程序/百度小程序/字節跳動小程序/飛書小程序/QQ小程序/360小程序
QUICKAPP-WEBVIEW 快應用通用(包含聯盟、華為)
QUICKAPP-WEBVIEW-UNION 快應用聯盟
QUICKAPP-WEBVIEW-HUAWEI 快應用華為

  ③支持的文件

  • .vue/.nvue:<!-- 注釋 -->
  • .js:// 注釋
  • .css:/* 注釋 */
  • pages.json:  // 注釋
  • 各預編譯語言文件,如:.scss、.less、.stylus、.ts、.pug

   ④注:VUE3 需要在項目的 manifest.json 文件根節點配置 "vueVersion" : "3"

  補充:uni-app static目錄的條件編譯

2,運行期判斷

  可使用 uni.getSystemInfoSync().platform 判斷客戶端環境是 Android、iOS 還是小程序開發工具(在百度小程序開發工具、微信小程序開發工具、支付寶小程序開發工具中使用 uni.getSystemInfoSync().platform 返回值均為 devtools)。

 1 switch(uni.getSystemInfoSync().platform){
 2     case 'android':
 3        console.log('運行Android上')
 4        break;
 5     case 'ios':
 6        console.log('運行iOS上')
 7        break;
 8     default:
 9        console.log('運行在開發者工具上')
10        break;
11 }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM