process.env变量在Nextjs中未定义

flvlnr44  于 2023-10-18  发布在  其他
关注(0)|答案(3)|浏览(172)

我正在阅读undefined作为我的环境变量。当我控制台日志进程.env时,我似乎找不到我在根目录下的.env文件中定义的变量。

.env.local文件

privateKey="444455....."

scripts/hardhat.config.js

mumbai: {
  url: 'https://polygon-mumbai.g.alchemy.com/v2/3333.....',
  accounts: [process.env.privateKey]
},

是因为我在页面之外阅读process.env吗?我也试过像NEXT_PUBLIC_privateKey="0033....."这样的前缀,然后阅读它process.env.NEXT_PUBLIC_privateKey,但值只会显示在页面文件夹内,而不是在scripts/hardhat.js.js中

acruukt9

acruukt91#

确保您已经安装并初始化了使用环境变量所需的doting NPM包。

zbdgwd5y

zbdgwd5y2#

终于可以用了

我最终按照某人的建议添加了dotenv,并开始阅读。

自我提示

next.js页面之外的环境变量需要dotnev;

5t7ly7z5

5t7ly7z53#

1.创建.env(所有环境)、.env.development(开发环境)和.env.production(生产环境)。
1.将前缀NEXT_PUBLIC添加到所有环境变量中。
下一个公钥
1.与前缀process.env一起使用

process.env.NEXT_PUBLIC_PRIVATE_KEY

1.停止服务器并重新启动:
npm run dev
1.我希望能成功。此解决方案为最新版本的nextJs(9以上)

相关问题