最近我也在配置uni-app的多環境,在官方社區找到了解決方法
參考一下社區的解決方案:https://ask.dcloud.net.cn/que...
在根目錄下創建.env.js,.env.dev.js,.env.prod.js這三個文件。
.env.js
; (function() { const NODE_ENV = 'dev'; // dev:開發環境 | test:測試環境 let ENV_VAR = null; if (process.env.NODE_ENV === "development") { if (NODE_ENV === 'dev') { ENV_VAR = require('.env.dev.js'); } else if (NODE_ENV === 'test') { } } else if (process.env.NODE_ENV === "production") { ENV_VAR = require('.env.prod.js'); } if (ENV_VAR) { process.uniEnv = {}; for (let key in ENV_VAR) { process.uniEnv[key] = ENV_VAR[key]; } } })();
.env.dev.js
const UNI_APP = { BASE_API: '/dev-api' } module.exports = UNI_APP;
.env.prod.js
const UNI_APP = { BASE_API = '/prod-api' } module.exports = UNI_APP;
.env.js 起到一個總控的作用,根據NODE_ENV變量的值加載不同的文件,起到環境變量切換的效果。有一點需要注意的是,我們需使用process.uniEnv.xxx來獲取我們設置的全局變量值。
在App.vue 引入.env.js並設置globalData
import '.env.js' export default { globalData: process.uniEnv };