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

Next.js 配置文件中的 next/image 配置

在 nextJS (next.config.js) 中设置 webpack 配置

必须使用 import 加载 ES Module:E:\projects\weblog\next.config.js

如何在带有 TypeScript 的 next.config.js 中使用 i18n 和 next/image?

如何在 next.config.js 中添加两个以上的插件