下一个 JS 环境变量在生产中不起作用

时间:2021-07-21 11:06:06

标签: reactjs environment-variables next.js

根据 Next.js 文档,您需要在 next.config.js 键下的 env 中声明您的 env 变量,以便在构建时读取它们:

env: {
    GOOGLE_ANALYTICS_ID: process.env.GOOGLE_ANALYTICS_ID
  }, 

这在我的本地环境中工作正常,变量对 _NEXT_DATA 是隐藏的,我仍然可以从客户端访问它们。问题是在为生产部署应用程序时,它无法再从 process.env 读取。有没有人遇到过这个问题? 注意:我不想暴露敏感数据。将 NEXT_PUBLIC_ 前缀添加到 env 变量是否也会将它们暴露给 _NEXT_DATA

1 个答案:

答案 0 :(得分:0)

您应该将环境变量存储在 .env(对于 Next.js 9.4 及更高版本)文件中,如 here 所示。如果您要部署到 Vercel refer to this guide