npm run build根據不同引數打包不同環境url
阿新 • • 發佈:2018-12-09
config資料夾下
dev.env.js中修改程式碼
'use strict' const merge = require('webpack-merge') const prodEnv = require('./prod.env') module.exports = merge(prodEnv, { NODE_ENV: '"development"', HOST: '"dev"' })
prod.env.js中修改程式碼 HOST為擷取到的引數
'use strict' let HOST = process.argv.splice(2)[0] || 'prod'; module.exports= { NODE_ENV: '"production"', HOST: '"'+HOST+'"' }
在封裝axios請求的檔案中
/** * 環境切換 */ let apiUrl = '' let HOST = process.env.HOST; if(HOST === 'prod'){ apiUrl = 'http://10.1.28.221:12001' } if(HOST === 'test'){ apiUrl = 'http://10.88.10.31:12002' } axios.defaults.baseURL = apiUrl;
這樣只需在打包的時候帶上引數就可以自動切換不同的url
生產環境:npm run build -- prod
測試環境:npm run build --test