Error: redirect() was called in a Client Component.

`redirect()` från `next/navigation` kan bara anropas i server-komponenter och Server Actions, inte i klientkomponenter.

Förklaring

redirect() är en server-side funktion som avbryter rendering och skickar ett HTTP 307-svar. Den fungerar inte i klientkomponenter eftersom det inte finns någon HTTP-response att arbeta med i webbläsarens kontext.

För navigering i klientkomponenter används useRouter och dess metoder push(), replace(), eller back().

Vanliga orsaker

redirect() anropad direkt i en 'use client'-komponent. Kod kopierad från en server-komponent till en klientkomponent utan anpassning.

Lösning

Använd useRouter för programmatisk navigering i klientkomponenter:

// Fel — kraschar i klientkomponent
import { redirect } from 'next/navigation';
'use client';
export default function Form() {
  const handleSubmit = () => redirect('/tack'); // fungerar inte
}

// Rätt
'use client';
import { useRouter } from 'next/navigation';
export default function Form() {
  const router = useRouter();
  const handleSubmit = () => router.push('/tack');
}