vue项目使用.env文件配置全局环境变量

关于文件名:

必须以如下方式命名,不要乱起名,也无需专门手动控制加载哪个文件

.env 全局默认配置文件,不论什么环境都会加载合并(注意:.env文件无论是开发还是生成都会加载的公用文件)

.env.development 开发环境下的配置文件

.env.production 生产环境下的配置文件

关于文件内容:

注意:属性名必须以VUE_APP_开头,比如VUE_APP_XXX

.env:

.env.development:

关于文件的加载:

根据启动命令vue会自动加载对应的环境,vue是根据文件名进行加载的,所以上面说“不要乱起名,也无需专门控制加载哪个文件”

比如执行npm run serve命令,会自动加载.env.development文件

启动项目:

npm run dev

打印process.env属性(全局属性,任何地方均可使用):

可见NODE_ENV被改为了development,覆盖掉了.env中的全局属性

.env中的全局属性NODE_ENV、VUE_APP_URL被覆盖,

.env中的全局属性VUE_APP_PREVIEW、VUE_APP_DEFAULT_PARAM被保留

即:我们运行npm run dev 在就先加载.env文件,之后加载.env.development文件,两个文件有同一个项,则,后加载的文件就会覆盖掉第一个文件,也即是.env.development文件覆盖掉了.env文件的NOOE_ENV选项。

同理:如果npm run build 就执行了.env和.env.prodoction。

参考---https://www.cnblogs.com/song-zmin/p/11818918.html

参考---https://blog.csdn.net/w405722907/article/details/94720868/

原文地址:https://www.cnblogs.com/pwindy/p/14649192.html