next.config.js 中的 process.env
Posted
技术标签:
【中文标题】next.config.js 中的 process.env【英文标题】:process.env inside next.config.js 【发布时间】:2021-06-05 23:21:33 【问题描述】:我正在尝试将 Next.js 图像优化与外部加载程序一起使用。我不知道为什么以下不起作用
module.exports = withPlugins([withGraphql],
[PHASE_PRODUCTION_BUILD]:
webpack: (config, webpack ) =>
config.plugins.push(new webpack.IgnorePlugin(/\/__tests__\//))
return config
,
,
images =
loader: 'imgix',
path: process.env.IMAGE_LOADER_URL,
)
但是,如果我对值进行硬编码,它就可以工作。这是在 Heroku 上,记录 process.env.IMAGE_LOADER_URL
的值会显示在日志中。
【问题讨论】:
【参考方案1】:所以这是双重的:
-
Next.js 在构建时加载任何
.env
文件之前读取此文件。
在运行容器化构建时,Heroku 不会使用环境变量运行 docker build
。
最终我的解决方案是放弃 Dockerized 构建。这也提高了我的部署速度。
【讨论】:
以上是关于next.config.js 中的 process.env的主要内容,如果未能解决你的问题,请参考以下文章
如何在使用插件时为“next/image”添加域到 next.config.js
在 nextJS (next.config.js) 中设置 webpack 配置
必须使用 import 加载 ES Module:E:\projects\weblog\next.config.js