微信小程序區(qū)分開發(fā)版茸苇、體驗版、正式版沦寂,達(dá)到自動切換開發(fā)環(huán)境学密、生產(chǎn)環(huán)境的目的,減少打包上傳代碼的次數(shù)传藏。
一腻暮、實現(xiàn)代碼:
//根據(jù)開發(fā)環(huán)境配置請求地址
// 獲取當(dāng)前帳號信息
const accountInfo = wx.getAccountInfoSync();
// env類型 develop:開發(fā)版、trial:體驗版毯侦、release:正式版
export const env = accountInfo.miniProgram.envVersion;
if(!evn){
console.error("獲取運行環(huán)境失敗!");
}
const baseApi = {
// 開發(fā)版
develop: "https://test.domain.cn",
// 體驗版
trial: "https://test.domain.cn",
// 正式版
release: "https://domain.cn"
};
// request請求baseURL
const SERVER_API = baseApi[env] ||'https://domain.cn';
二哭靖、相關(guān)知識:
Object wx.getAccountInfoSync()
基礎(chǔ)庫 2.2.2 開始支持,低版本需做兼容處理
獲取當(dāng)前帳號信息侈离。線上小程序版本號僅支持在正式版小程序中獲取试幽,開發(fā)版和體驗版中無法獲取。
返回值
Object
帳號信息
屬性 | 類型 | 說明 |
---|---|---|
miniProgram | Object | 小程序帳號信息 |
plugin | Object | 插件帳號信息(僅在插件中調(diào)用時包含這一項) |
miniProgram 的結(jié)構(gòu)
屬性 | 類型 | 說明 | 最低版本 |
---|---|---|---|
appId | string | 小程序 appId | |
envVersion | string | 小程序版本 | 2.10.0 |
version | string | 線上小程序版本號 | 2.10.2 |
miniProgram.envVersion 的合法值
值 | 說明 | 最低版本 |
---|---|---|
develop | 開發(fā)版 | |
trial | 體驗版 | |
release | 正式版 |
plugin 的結(jié)構(gòu)
屬性 | 類型 | 說明 |
---|---|---|
appId | string | 插件 appId |
version | string | 插件版本號 |
示例代碼
const accountInfo = wx.getAccountInfoSync();
console.log(accountInfo.miniProgram.appId) // 小程序 appId
console.log(accountInfo.plugin.appId) // 插件 appId
console.log(accountInfo.plugin.version) // 插件版本號霍狰, 'a.b.c' 這樣的形式
*參考資料:
https://developers.weixin.qq.com/miniprogram/dev/api/open-api/account-info/wx.getAccountInfoSync.html
http://www.reibang.com/p/d99f3a3376e9