先是看了这个文章写的如何npm run build 的时候自动配置地址
参考文章“vue配置开发、测试、生产环境(不同环境,不同命令)_Amy_cloud的博客-CSDN博客_vue生产环境和测试环境切换”
后来我发现本地 npm start 的时候 跨域配置文件config/proxyConfig.js 中获取不到 process.env.BASE_API,页面调用的时候还是可以的,所以自己摸索了一个解决办法。
解决方案:
package.json中写入:
这样子,我就可以获取 process.env.NODE_ENV。
let config = require('./'+process.env.env_config+'.env');
console.log(config.BASE_API,'config.BASE_API');
console.log(config.BASE_API.substring(1,config.BASE_API.length-1),'config.BASE_API');
module.exports = {
proxy: {
'/aaa/bbb/ccc/':{
target:config.HOST_URL.substring(1,config.HOST_URL.length-1),
changeOrigin:true,
},
'/ddd/eee/fff': {
target:config.CLOUD_URL.substring(1,config.CLOUD_URL.length-1),
changeOrigin: true, //是否跨域
pathRewrite: {
'^/ddd/eee/fff': '/ddd/eee/fff'
}
},
}
}
使用的时候substring去掉地址中的引号