Next.js NextJS返回页面中未定义的环境变量

Next.js NextJS返回页面中未定义的环境变量,next.js,Next.js,我试图在我的一个页面中获取环境变量,但它总是返回未定义的。我在访问api文件夹中的变量时没有问题,但是在pages/page.tsx中它不会返回变量 我使用 const SECRET=process.env.SECRET来自我的.env文件 如何解决此问题?我认为实现您尝试执行的操作的首选方法是在服务器端的getServerSideProps()/getStaticProps()方法中使用env变量。这应该像预期的那样工作,没有任何技巧 但是,如果您想访问客户端上的env变量,则必须在变量前面加

我试图在我的一个页面中获取环境变量,但它总是返回未定义的。我在访问
api
文件夹中的变量时没有问题,但是在
pages/page.tsx
中它不会返回变量

我使用

const SECRET=process.env.SECRET
来自我的
.env
文件


如何解决此问题?

我认为实现您尝试执行的操作的首选方法是在服务器端的getServerSideProps()/getStaticProps()方法中使用env变量。这应该像预期的那样工作,没有任何技巧

但是,如果您想访问客户端上的env变量,则必须在变量前面加上NEXT_PUBLIC_

请参阅官方网站:

默认情况下,通过.env.local加载的所有环境变量仅在Node.js环境中可用,这意味着它们不会向浏览器公开

为了向浏览器公开变量,必须在变量前面加上NEXT_PUBLIC_前缀。例如:

NEXT\u PUBLIC\u ANALYTICS\u ID=abcdefghijk


这将向用户公开。如果我想在我的页面中加载它,我需要使用.env文件将它们放在env.local?@ashes999中。我还更新了更多信息的答案