因為在vue-cli3.0中沒有了config這個文件。在網上看了許多配置方法都是用config文件來配置。所以自己摸索了一下
首先我們想通過不同命令行切換不同環境api等信息
eg:
npm run dev 調用本地環境api
npm run test 調用測試環境api
npm run build 調用線上環境api
(1)先在package.json文件中的scripts對象中添加:
"test":"vue-cli-service build --mode test"
(2)在項目的根目錄下添加文件 .env 文件和 .env.test 文件:
在.env文件中寫上
NODE_ENV = 'production'
VUE_APP_FLAG = 'pro'
.env.test文件(outputDir:打包時的輸出目錄名字,若需默認輸出到dist目錄,則可不寫該變量)
在該文件中寫
NODE_ENV = 'production'
VUE_APP_FLAG = 'test'
outputDir = test
在vue.config.js文件中寫入(不用寫在對象里)
outputDir: process.env.outputDir,
3)在main.js文件中配置api變量
if (process.env.NODE_ENV === 'production') { if (process.env.VUE_APP_FLAG === 'pro') { axios.defaults.baseURL = 'http://api.xinggeyun.com'; } else { axios.defaults.baseURL = 'http://192.168.0.152:8102'; } } else { //dev 開發環境 axios.defaults.baseURL = 'http://192.168.0.152:8102'; }
最后npm run test后會打包一個test的文件夾。