vue-cli环境配置
一、环境配置一
vue-cli 2.0脚手架,修改config文件夹里面的dev.env.js,prod.env.js,test.env.js
注意所有value都有单引号里面嵌套双引号,另外就是开发跨域的就直接跨域,但是配置的时候不要配置'"/api"',我配置成这样是报错的
dev.env.js
'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
NODE_ENV: '"development"',
API_HOST: '"http://development.com/"' => // 这个就是开发环境的域名
// API_HOST: '"/api"' => 报错
})
prod.env.js
'use strict'
module.exports = {
NODE_ENV: '"production"',
API_HOST: '"http://production.com/"', => // 这个就是生产环境的域名
}
test.env.js
'use strict'
module.exports = {
NODE_ENV: '"production"',
API_HOST_PROD: '"http://test.com/"', => // 这个就是测试环境的域名
}
上面配置完成之后,去到build文件夹,复制一份webpack.prod.conf.js,修改成webpack.test.conf.js,将里面的env常量改成test文件
const env = require('../config/test.env')
在去到package.json文件,复制script里面的build一份,改为test
"scripts": {
"test": "node build/test.js",
"build": "node build/build.js"
}
最后去到src下的api文件夹,创建一个文件,修改baseURL
axios.defaults.baseURL = process.env.API_HOST
二、环境配置二
一个大佬的配置
在config文件夹里面修改prod.env.js文件
'use strict'
module.exports = {
NODE_ENV: '"production"',
API_HOST_PROD: '"http://production.com/"',
API_HOST_DEV: '"http://development.com/"',
API_HOST_TEST: '"http://test.com/"'
}
然后在main.js文件中配置axios的baseURL
if (location.hostname === 'localhost') {
axios.defaults.baseURL = process.env.API_HOST_DEV
} else if (location.hostname === 'admin.jiuzhouauto.com') {
axios.defaults.baseURL = process.env.API_HOST_PROD
} else if (location.hostname === 'devadmin.jiuzhouauto.com') {
axios.defaults.baseURL = process.env.API_HOST_TEST
}
三、环境配置三
在build文件夹下面配置build-环境.js文件,在里面配置文件类型
process.env.type = '"test"'
// 引入原来的build.js
require('./build')
在package.json里面配置test,同上面的,复制build
在prod.env.js里面配置环境
const target = process.env.npm_lifecycle_event;
if (target == 'test') {
//如果有其他配置也加入在obj中
//24测试环境
var obj = {
NODE_ENV: '"production"',
BASE_API: '"http://**test**"',
// 可以添加其他环境变量
}
}
module.exports = obj