Vue.js 在我更改环境变量后使用它们的旧值



我正在做一个 Vue.js 项目。我有一个包含一些VUE_APP_*环境变量的.env.development文件。我更改了一些变量的值,但 Vue.js 代码仍然使用以前的值。

我尝试了一切:我停止并使用npm run serve重新启动服务器,我删除了node_sass文件夹并再次启动npm install,我完全重新安装了 nodejs(我也删除了~/.npm文件夹),我从存储库克隆了我项目的新副本,我重新启动了我的计算机,但它仍然读取变量的旧值。

我还尝试删除.env.development文件,它给了我一个错误,这意味着它正在从正确的位置读取变量,但是当我恢复已删除的文件时,它一直在读取旧值。

如果我更改变量的值,它仍然显示旧值,如果我添加一个新变量,它会显示undefined.我没有其他环境文件,我还在所有文件内容中搜索了变量的名称,这是声明它的唯一位置。

你知道 Vue 或 Node.js 是否在某处保留缓存变量吗?

我正在使用最新版本的Linux Mint与node.js 10.19.0,npm 6.14.4(我也尝试使用最新版本)和Vue.js 2.6

谢谢

编辑:这是代码

<template>
...
</template>
<script>
export default {
created() {
console.log(process.env.VUE_APP_MYVAR);
},
data() {
return { }
}
</script>

我刚刚遇到了同样的问题,这是因为 vue 服务器已经在不知不觉中运行了,所以当我运行vue-cli-service serve时,它没有更新出现在浏览器中的 env 变量。为了解决这个问题,我发现该进程在端口 8080(vue 的默认端口)上运行并杀死了它。首先运行lsof i:8080并使用kill {PID}终止节点进程。

最新更新