1.我在没有.env
文件的情况下执行yarn build
1.将.env
文件添加到项目中
1.我做yarn start
。
1.将useRuntimeConfig().public.baseURL
输出到控制台并获得undefined
。
为什么运行时不跟踪我的环境变量?
.环境
NUXT_PUBLIC_BASE_URL=https://example.com/api/v1
新配置js
export default defineNuxtConfig({
runtimeConfig: {
public: {
baseUrl: ''
}
},
插件/应用程序.js
export default defineNuxtPlugin(() => {
console.log('baseURL', useRuntimeConfig().public.baseURL
})
3条答案
按热度按时间nnvyjq4y1#
从文档页面:
但是,在构建服务器之后,您需要在运行服务器时负责设置环境变量。此时不会读取.env文件。具体操作方式因环境而异。在Linux服务器上,您可以使用终端DATABASE_HOST=mydatabaseconnectionstring node .output/server/index. mjs将环境变量作为参数传递。或者您可以使用source .env && node .output/server/index. mjs。请注意,对于纯静态站点,在预呈现项目后不可能设置运行时配置。
所以,
source .env && yarn start
应该可以。ut6juiuv2#
您可以检查nuxt的版本。
如果是桥接版本,
runtimeConfig
无法工作。因为我用的是@nuxt/bridge,而不是work。
然后它在
3.0.0-rc.3
版本上工作了。我试过了。s5a0g9ez3#
你要做的就是显式地将它设置为空字符串。