rsnext/errors/invalid-page-config.md
Sukka 02c78a5c15
fix(#38743): config.runtime support template literal (#38750)
## Bug

- [x] Related issues linked using `fixes #number`
- [x] Integration tests added
- [ ] Errors have helpful link attached, see `contributing.md`

Fixes #38743.
Fixes: https://github.com/vercel/next.js/pull/38750

The PR adds basic `TemplateLiteral` support for static analysis.

The corresponding re-production of #38743 has also been implemented in e2e tests.
2022-07-21 19:56:52 +00:00

1.6 KiB

Invalid Page / API Route Config

Why This Error Occurred

In one of your pages or API Routes you did export const config with an invalid value.

Possible Ways to Fix It

The page's config must be an object initialized directly when being exported and not modified dynamically. The config object must only contains static constant literals without expressions.

Not Allowed Allowed
// `config` should be an object
export const config = 'hello world'
export const config = {}
export const config = {}
// `config.amp` is defined after `config` is exported
config.amp = true

// `config.amp` contains a dynamic expression
export const config = {
  amp: 1 + 1 > 2,
}
export const config = {
  amp: true,
}

export const config = {
  amp: false,
}
// `config.runtime` contains a dynamic expression
export const config = {
  runtime: `node${'js'}`,
}
export const config = {
  runtime: 'nodejs',
}
export const config = {
  runtime: `nodejs`,
}
// Re-exported `config` is not allowed
export { config } from '../config'
export const config = {}