Vue cli - TypeError:无法读取未定义的属性“env”
Posted
技术标签:
【中文标题】Vue cli - TypeError:无法读取未定义的属性“env”【英文标题】:Vue cli - TypeError: Cannot read property 'env' of undefined 【发布时间】:2021-08-11 08:53:02 【问题描述】:我正在尝试在我的 vue 应用程序中使用 process.env
。我创建了两个.env
文件,一个用于生产.env.production
,另一个用于开发.env.development
。这两个文件位于我的 vue 项目的根目录中,但 vue cli 会忽略它们。我创建了一个环境变量,我在我的Home.vue
组件中调用它来为开发/生产设置不同的图像路径。问题是在构建之后,当我运行我的应用程序来测试它时,我会收到这个错误
TypeError: Cannot read property 'env' of undefined
它与我要加载的图像的src标签中设置的路径有关
<img class="img-fluid" :src="`$process.env.VUE_APP_PATH_START/img/background.jpg`">
我的.env
文件看起来像这样
开发环境文件
VUE_APP_PATH_START = ../assets/
生产环境文件
VUE_APP_PATH_START = /
我在构建中遇到此错误有什么原因以及如何修复它?
【问题讨论】:
【参考方案1】:尝试使用 require 函数将其定义为计算属性:
computed:
background()
return require("`$process.env.VUE_APP_PATH_START/img/background.jpg`")
模板:
<img class="img-fluid" :src="background"/>
【讨论】:
以上是关于Vue cli - TypeError:无法读取未定义的属性“env”的主要内容,如果未能解决你的问题,请参考以下文章
Vue路由器错误:TypeError:无法读取未定义的属性“匹配”
Rails 6.1.0 [webpack-cli] TypeError:无法读取未定义的属性“插件”
Ember CLI 控制器测试:未捕获的 TypeError:无法读取 null 的属性“transitionToRoute”
Vue:未捕获(承诺中)TypeError:无法读取未定义的属性'_c'