在 vue 我的项目中,与 vue.config.js 同级目录下会默认生成两个环境变量文件,.env 和 .env.development
在 vue 的默认配置中 npm run serve 默认环境变量 NODE_ENV 是“development”,因而会加载.env.development 中的环境变量。
而 npm run build 默认环境变量 NODE_ENV 是“production”,因而会加载.env 中的环境变量
留神一个非凡的状况,环境变量.env 文件(包含.env 和.env.development 以及其余.env 文件)中的变量 BASE_URL 会被 vue.config.js 中 publicPath 变量笼罩。
举例如下:
// .env
BASE_URL=’release/’
APP_BASE_URL=’app/release/’
// vue.config.js
module.exports = {
publicPath:‘public/’
}
运行前端我的项目,打印 BASE_URL 和 APP_BASE_URL
// main.js
console.log(process.env.BASE_URL) //‘public/’(被 publicPath 笼罩)
console.log(process.env.APP_BASE_URL) //‘app/release/’
因而如果须要在依据环境不同别离自定义 url(如用作 axios 的 baseUrl) 就不要应用 BASE_URL 这个变量名,改用其余变量名如 APP_BASE_URL。
同步更新在本人的语雀:
https://www.yuque.com/dirackeeko/blog/bqgv2r