【发布时间】:2021-09-25 05:25:18
【问题描述】:
我尝试将 Next.js 与 TypeScript 一起使用,我需要添加自定义配置。我创建了一个 next.config.js 文件,但看起来 Next.js 没有加载它。例如自定义环境变量不可用。这是我的 next.config.js
const withPlugins = require("next-compose-plugins");
const optimizedImages = require("next-optimized-images");
module.exports = withPlugins([
[
optimizedImages,
{
/* config for next-optimized-images */
optimizeImages: false,
},
],
{
reactStrictMode: true,
// images: {
// domains: ['localhost:3000'],
// path: `uploads/_next/image`
// imageSizes: [16, 32, 48, 64, 96, 128, 256, 384]
// },
env: {
baseUrl: "http://localhost:3001",
apiUrl: "http://localhost:5000",
},
},
// your other plugins here
]);
例如,当我尝试访问类似 process.env.baseUrl 的 baseUrl 时,我得到一个错误
服务器错误 错误:baseUrl 未定义。
同样的配置在 Next.js 的 JavaScript 版本中工作正常。
那我做错了什么?
【问题讨论】:
-
您应该使用
.env文件设置环境变量。我建议阅读Environment Variables in Next.js。 -
是的,我已经这样做了。谢谢。但我的问题是关于如何在 TypeScript 版本中使用自定义配置?
-
如果您已使用
.env文件进行设置,则无需在next.config.js中设置环境变量。只需访问出现在.env文件中的变量,例如process.env.YOUR_ENV_VAR。这与您使用的语言无关。
标签: javascript node.js typescript next.js