uni-app平台判断 | uni app判断h5 小程序 app 等不同平台
<p>使用</p><div class="cnblogs_code">
<pre><strong><span style="color: rgba(51, 153, 102, 1)">// @/utils/Config.ts</span></strong><br><br>import {EPlatform} from './EPlatform'<span style="color: rgba(0, 0, 0, 1)">;
import {isH5, Platform} from </span>'@/utils/Platform'
<span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*配置信息</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export </span><span style="color: rgba(0, 0, 255, 1)">default</span><span style="color: rgba(0, 0, 0, 1)"> class Config {
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*http请求根目录</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
static get httpBaseUrl(): string {
</span><span style="color: rgba(0, 0, 255, 1)">if</span><span style="color: rgba(0, 0, 0, 1)"> (isH5) {
</span><span style="color: rgba(0, 0, 255, 1)">return</span> '/'<span style="color: rgba(0, 0, 0, 1)">
} </span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)"> {
</span><span style="color: rgba(0, 0, 255, 1)">return</span> 'http://demo.cn/'<span style="color: rgba(0, 0, 0, 1)">
}
}
}</span></pre>
</div>
<p>推荐使用条件编译</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*枚举EPlatform</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export enum EPlatform {
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*App</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
AppPlus </span>= 'APP-PLUS'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*App nvue</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
AppPlusNvue </span>= 'APP-PLUS-NVUE'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*H5</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
H5 </span>= 'H5'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*微信小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
MpWeixin </span>= 'MP-WEIXIN'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*支付宝小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
MpAlipay </span>= 'MP-ALIPAY'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*百度小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
MpBaidu </span>= 'MP-BAIDU'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*字节跳动小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
MpToutiao </span>= 'MP-TOUTIAO'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*QQ小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
MpQq </span>= 'MP-QQ'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*360小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
Mp360 </span>= 'MP-360'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*微信小程序/支付宝小程序/百度小程序/字节跳动小程序/QQ小程序/360小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
Mp </span>= 'MP'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*快应用通用(包含联盟、华为)</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
QuickappWebview </span>= 'quickapp-webview'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*快应用联盟</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
QuickappWebviewUnion </span>= 'quickapp-webview-union'<span style="color: rgba(0, 0, 0, 1)">,
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*快应用华为</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
QuickappWebviewHuawei </span>= 'quickapp-webview-huawei'<span style="color: rgba(0, 0, 0, 1)">,
}
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*使用条件编译获取平台信息</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export </span><span style="color: rgba(0, 0, 255, 1)">function</span><span style="color: rgba(0, 0, 0, 1)"> ifDefPlatform(): EPlatform {
let platform: EPlatform
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef APP-PLUS</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.AppPlus;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef APP-PLUS-NVUE</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.AppPlusNvue;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef H5</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.H5;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef MP-WEIXIN</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpWeixin;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef MP-ALIPAY</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpAlipay;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef MP-BAIDU</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpBaidu;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef MP-TOUTIAO</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpToutiao;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef MP-QQ</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpQq;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef MP-360</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.Mp360;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef MP</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.Mp;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef quickapp-webview</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.QuickappWebview;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef quickapp-webview-union</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.QuickappWebviewUnion;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#ifdef quickapp-webview-huawei</span>
platform =<span style="color: rgba(0, 0, 0, 1)"> EPlatform.QuickappWebviewHuawei;
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">#endif</span>
<span style="color: rgba(0, 0, 255, 1)">return</span><span style="color: rgba(0, 0, 0, 1)"> platform
}
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*平台类型</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const Platform: EPlatform </span>=<span style="color: rgba(0, 0, 0, 1)"> ifDefPlatform()
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*默认导出平台类型</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export </span><span style="color: rgba(0, 0, 255, 1)">default</span><span style="color: rgba(0, 0, 0, 1)"> Platform
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*App</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isAppPlus </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.AppPlus
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*App nvue</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isAppPlusNvue </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.AppPlusNvue
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*H5</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isH5 </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.H5
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*微信小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isMpWeixin </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpWeixin
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*支付宝小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isMpAlipay </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpAlipay
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*百度小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isMpBaidu </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpBaidu
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*字节跳动小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isMpToutiao </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpToutiao
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*QQ小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isMpQq </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.MpQq
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*360小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isMp360 </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.Mp360
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*微信小程序/支付宝小程序/百度小程序/字节跳动小程序/QQ小程序/360小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isMp </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.Mp
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*快应用通用(包含联盟、华为)</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isQuickappWebview </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.QuickappWebview
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*快应用联盟</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isQuickappWebviewUnion </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.QuickappWebviewUnion
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*快应用华为</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isQuickappWebviewHuawei </span>= Platform ==<span style="color: rgba(0, 0, 0, 1)"> EPlatform.QuickappWebviewHuawei
</span><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*是否开发环境</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isDevelopment </span>= process.env.NODE_ENV == 'development'
<span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*是否线上环境</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isProduction </span>= process.env.NODE_ENV == 'production'
<span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*抖音小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isMpDouyinApp </span>= uni.getSystemInfoSync().appName == 'Douyin'
<span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*头条小程序</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
export const isMpToutiaoApp </span>= uni.getSystemInfoSync().appName == 'Toutiao'</pre>
</div>
<p> </p>
<p>本文地址:</p>
<p>https://www.cnblogs.com/stumpx/p/13289154.html</p>
<p> </p>
<div id="gtx-anchor" style="position: absolute; visibility: hidden; left: 21px; top: 607px; width: 145px; height: 13.5px"> </div>
<div class="jfk-bubble gtx-bubble" style="visibility: visible; left: 79px; top: 477px; opacity: 1"> </div><br><br>
来源:https://www.cnblogs.com/stumpx/p/13289154.html
頁:
[1]