Error: Page '...' is missing generateStaticParams() so it cannot be used with 'output: export'.

En dynamisk route saknar `generateStaticParams()` som krävs för statisk export.

Förklaring

Med output: 'export' i next.config.js genererar Next.js en fullt statisk sajt utan server. Det fungerar bara om Next.js vet i förväg vilka URL:er som ska genereras. För dynamiska routes som [slug] och [id] berättar generateStaticParams() vilka parametrar som ska renderas.

Saknas funktionen vet Next.js inte vilka sidor som ska byggas och kan inte inkludera dem i exporten. Felet uppstår vid next build.

Samma krav gäller om dynamic = 'error' är satt på en route — Next.js kräver att alla möjliga värden är kända i förväg.

Vanliga orsaker

Dynamisk route utan generateStaticParams() i ett projekt med output: 'export'. Ny route-fil skapad utan att lägga till den obligatoriska funktionen.

Lösning

Lägg till generateStaticParams() i route-filen:

import { felmeddelanden } from '@/data/felmeddelanden';

export async function generateStaticParams() {
  return felmeddelanden.map((f) => ({ slug: f.slug }));
}

export default async function Page({ params }) {
  const { slug } = await params;
  // ...
}

Funktionen returnerar en array av objekt med de parametrar som ska byggas. Varje objekt motsvarar en URL.