我创建了一个.env.local文件,并尝试控制台process.env.TEST
(测试env-var(,但我得到了undefined
。process.env
似乎总是空的。我重新启动了服务器,但仍然没有看到env-var。我甚至试图启动一个新的空项目,但process.env
仍然是空的。
我是不是错过了什么?我看到的所有其他帖子似乎都想明白了,但我仍然做不到。我的.env.local文件位于根级别。我还尝试用NEXT_PUBLIC
附加var,但这没有帮助。
按照惯例,React env变量必须以REACT_APP_
为前缀才能与process.env
一起使用。在Next.js的情况下,您可以将它们放在.env.local
中,但它们将仅在Node.js环境中可用。如果需要使它们在浏览器中可用,则需要在它们前面加上NEXT_PUBLIC_
。有关更多详细信息,请参阅文档。
另一种方法(更老派的Next.js(是有一个next.config.js
文件。一个可能的配置是:
const conf = {
env: {
myVar: process.env.MY_VAR,
},
};
module.exports = conf;
然后您可以简单地在代码中使用process.env.myVar
。有关详细信息,请参阅本页。