我正在使用
然而,当我测试
测试过程如下:
我接着在我的网站上添加了以下代码:
在这种情况下,
这将显示如下:
简而言之,由于某种原因,我似乎无法在我的nextjs应用程序中加载环境变量。 无论是来自
有任何想法吗?
谢谢。
next-auth
库,该库需要使用以下环境变量: Providers.GitHub({
clientId: process.env.GITHUB_ID,
clientSecret: process.env.GITHUB_SECRET,
}),
然而,当我测试
next-auth
时,它没有起作用,我认为原因是这些变量没有正确加载。因此,我进行了一些测试,以查看是否可以在我的应用程序中访问环境变量,测试结果表明我无法访问。测试过程如下:
// .env.local (root level)
NEXT_PUBLIC_ENV_LOCAL_VARIABLE="public_variable_from_env_local"
我接着在我的网站上添加了以下代码:
<h2>test one start</h2>
{process.env.NEXT_PUBLIC_TEST_ONE}
<h2>test one end</h2>
<Spacer />
<h2>test two start</h2>
{process.env.TEST_TWO}
<h2>test two end</h2>
在这种情况下,
test one start
和test one end
都会出现,但环境变量不会出现。对于test two start
和test two end
也是如此。
我用console.log做了类似的测试:
console.log("test one", process.env.NEXT_PUBLIC_TEST_ONE)
console.log("test two", process.env.TEST_TWO)
这将显示如下:
test one undefined
test two undefined
简而言之,由于某种原因,我似乎无法在我的nextjs应用程序中加载环境变量。 无论是来自
next-auth
,还是代码中的环境变量,或者是console.log中的环境变量,它们都是未定义的,我不知道为什么。有任何想法吗?
谢谢。
.env.*
后,您需要重新启动开发服务器。然后它会显示一个信息,例如:从.env.local加载环境变量
。 - brc-dd