【发布时间】:2021-10-08 23:19:10
【问题描述】:
我看到了很多关于这个主题的其他问题,但没有一个对我有帮助。
使用 vue 我想使用一个 api,但是当应用程序投入生产时,url 会改变,所以在 .env 文件中我定义了一个 BASE_URL,但是当我在 vue 组件中使用它时,它说 procces 是未定义。
我已尝试在 webpack.config.js 中使用 webpack.DefinePlugin 或将环境变量命名为 VUE_APP_BASE_URL 但似乎没有任何效果。
export default {
name: "Dashboard",
data() {
return {
data: undefined
}
},
created() {
axios
.get(process.env.BASE_URL + "/api/xxxxx")
.then(res => this.data = res.data)
},
};
webpack.config.js:
plugins: [
new VueLoaderPlugin(),
new webpack.DefinePlugin({
'process.env.BASE_URL': JSON.stringify(process.env.BASE_URL),
})
]
.env:
BASE_URL=http://localhost:3000/
webpack 版本:5.48.0
【问题讨论】:
-
你是如何使用definePlugin的?你使用的是什么 webpack 版本?你的 .env 结构是什么?
-
我更新了@Jtcruthers 的问题
标签: javascript node.js vue.js axios environment-variables