参考地址javascript
前言:项目通常有开发环境,测试环境,生产环境;vue cli内置有开发和生产环境,能够用process.env.NODE_ENV区分,有时候咱们和后台同事须要本地链接调试代码,又须要链接测试环境调试,发布的还有生产环境。关靠NODE_ENV没法区分3种baseUrl。下面加一种alpha环境变量,和production打包就productionSourceMap配置有区别,用于测试环境方便查看源码调试。html
一、建立vue cli环境变量vue
NODE_ENV = 'production' VUE_APP_BUILD = 'production'
NODE_ENV = 'production' VUE_APP_BUILD = 'alpha'
两个文件NODE_ENV值都为production,以消除vue cli内部使用NODE_ENV变量致使打包出现差别java
二、修改package.json启动模式vue-cli
{ "scripts": { "serve": "vue-cli-service serve", "build": "vue-cli-service build --mode build", "alpha": "vue-cli-service build --mode alpha" } }
build用户生产环境打包,alpha用于测试环境打包json
三、修改vue.config.js配置api
module.exports = { publicPath: process.env.NODE_ENV === 'production' ? './' : '/', lintOnSave: process.env.NODE_ENV !== 'production', productionSourceMap: process.env.VUE_APP_BUILD !== 'production' // 生产环境去掉map文件 }
四、不一样环境使用不一样urlide
const dev = '/test' const alp = 'http://192.168.1.31:8443/api' const pro = 'http://111.111.111.111:8443/api' export const baseURL = process.env.NODE_ENV === 'development' ? dev : process.env.VUE_APP_BUILD === 'production' ? pro : alp
经过process.env.VUE_APP_BUILD能够取到配置在.env.[mode]文件里面的值测试
注:mode在build环境下为.env.build文件下VUE_APP_BUILD配置的值ui