修改开发环境的配置 config/dev.env.js
'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
NODE_ENV: '"development"',
API_ROOT: '"https://xxxxxx.com/v1/"'
})
修改正式环境的配置 config/prod.env.js
'use strict'
module.exports = {
NODE_ENV: '"production"',
API_ROOT: '"https://aaaaa.com/v1/"' //生产
}
修改正式环境的配置 config/prod_sit.env.js
添加prod_sit.env.js文件
/** SIT测试环境配置 */
'use strict'
module.exports = {
NODE_ENV: '"test_sit"',
API_ROOT: '"https://sit1.xxx.com/v1/"',
}
修改build/webpack.prod.conf.js
// 获取script传入参数, 判断当前打包环境
const argv = require('optimist').argv
let env = '', status = argv._[0];
if(process.env.NODE_ENV === 'testing'){
env = require('../config/test.env')
}else{
switch (status) {
case 'TEST_SIT':
env = require('../config/prod_sit.env')
console.log('当前build环境:', 'sit测试环境')
break;
default:
env = require('../config/prod.env')
console.log('当前build环境:', '线上生产环境')
break;
}
}
修改package.json
"scripts": {
"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
"start": "npm run dev",
"unit": "jest --config test/unit/jest.conf.js --coverage",
"e2e": "node test/e2e/runner.js",
"test": "npm run unit && npm run e2e",
"lint": "eslint --ext .js,.vue src test/unit test/e2e/specs",
"build": "node build/build.js",
"build_sit": "node build/build.js TEST_SIT" //添加测试环境build
},
接口调用时使用 process.env.BASE_API
const service = axios.create({
baseURL: process.env.API_ROOT, // api 的 base_url
timeout: 5000 // request timeout
})
或
axios.defaults.baseURL = process.env.API_ROOT