UniApp 項(xiàng)目中配置環(huán)境變量

參考官方文檔
uni-app 項(xiàng)目中配置環(huán)境變量主要有如下三種方式

首先修改package.json文件


"uni-app": {
  "scripts": {
    "mp-test": {
      "title": "測(cè)試環(huán)境",
      "env": {
        "UNI_PLATFORM": "h5"
      },
      "define": {
        "MP-TEST": true
      }
    }
  }
}

image.png

此時(shí)運(yùn)行和發(fā)行下拉菜單都會(huì)有測(cè)試環(huán)境這個(gè)選項(xiàng)也可以運(yùn)行。

但是手機(jī)模擬器并不能選擇那個(gè)環(huán)境運(yùn)行,運(yùn)行默認(rèn)是開發(fā)環(huán)境。但是我想切換測(cè)試環(huán)境。我是沒有找到怎么切換。所以后來(lái)我選擇 .env配置環(huán)境變量

新建幾個(gè)環(huán)境變量文件
.env.js
.env.dev.js
.env.test.js
.env.prod.js

然后修改.env.js

var EnvChannel  = {
    DEVELOPMENT:0, //開發(fā)環(huán)境
    TEST:1,//測(cè)試環(huán)境
    PRODUCTION:2//生產(chǎn)環(huán)境
}

//設(shè)置環(huán)境
const ENV_CHANNEL = EnvChannel.DEVELOPMENT;

if(ENV_CHANNEL == EnvChannel.DEVELOPMENT){
    //開發(fā)環(huán)境
    ENV_CONFIG = require('.env.dev.js');
}else if(ENV_CHANNEL == EnvChannel.TEST){
    //測(cè)試環(huán)境
    ENV_CONFIG = require('.env.test.js');
}else if(ENV_CHANNEL == EnvChannel.PRODUCTION){
    //生產(chǎn)環(huán)境
    ENV_CONFIG = require('.env.prod.js');
}
 
//給環(huán)境變量process.uniEnv賦值
if (ENV_CONFIG) {
    process.uniEnv = {};
    for (let key in ENV_CONFIG) {
        process.uniEnv[key] = ENV_CONFIG[key];
    }
}

修改.env.dev.js 測(cè)試,生產(chǎn)環(huán)境同樣的

const config = {
    baseUrl: ''
}
module.exports = config;

然后再main.js

//引用并設(shè)置環(huán)境變量
import '.env.js'

使用

const baseUrl = process.uniEnv.baseUrl;

如果要使用測(cè)試環(huán)境,修改.env.js

//設(shè)置環(huán)境
const ENV_CHANNEL = EnvChannel.TEST;
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容