Interviewfragen zu Next.js (Middle) mit Antworten
75 Fragen fürs Vorstellungsgespräch zu Next.js (Middle) mit richtigen Antworten, Erklärungen und Links zur Dokumentation.
Diesen Test machen- 1.Was ist eine Server Function (Server Action) in Next.js?
- 2.Was bringt
<form action={createPost}>mit einer Server Action im Vergleich zuonSubmit+fetch? - 3.Was macht
revalidatePath('/blog')nach einer Mutation? - 4.Wie unterscheidet sich
updateTagvonrevalidateTagin Next.js 16? - 5.Werden
fetch-Requests in Server Components standardmäßig gecacht (Next.js 15+, ohne Cache Components)? - 6.Was macht die Direktive
'use cache'? - 7.Warum kann man in einer Funktion mit
'use cache'nichtcookies()aufrufen? - 8.Welches
cacheLife-Profil gilt, wenn man in'use cache'keines angibt? - 9.Wofür ist
cacheTag('products')in einer gecachten Funktion? - 10.Was macht
loading.tsxbei Client-Navigation zu einem Segment mit langsamen Daten? - 11.Was macht
generateStaticParams? - 12.Wie zeigt man in Next.js eine Seite mit langsamen Daten, ohne die ganze Seite zu verzögern?
- 13.Wie vermeidet man eine Request-Kaskade, wenn eine Komponente unabhängige
getUser()undgetPosts()braucht? - 14.Wie vermeidet man eine doppelte DB-Abfrage, wenn
generateMetadataund die Seite beidegetUser(id)aufrufen? - 15.Wie garantiert man, dass ein Modul mit Geheimnissen nie im Client-Bundle landet?
- 16.Kann man
next/dynamicmitssr: falsein einer Server Component verwenden? - 17.Warum packt man eine Komponente mit
useSearchParams()in<Suspense>? - 18.Was sind parallele Routen (
@slot)? - 19.Wofür sind abfangende Routen
(.)photo/[id]? - 20.Wie liest man in einer Server Component unter Next.js 16 ein Cookie?
- 21.Was macht
proxy.ts(früher Middleware)? - 22.Was ruft man in einer Client Component auf, um die Server Components der aktuellen Route neu zu laden?
- 23.Wie unterscheidet sich
global-error.tsxvonerror.tsx? - 24.Was macht
export const dynamic = 'force-dynamic'(ohne Cache Components)? - 25.Welche Props kann man von einer Server-Seite an eine Client Component übergeben?
- 26.Wie bekommt man im App Router Daten für
generateMetadataund die Seite, ohne die API doppelt perfetchabzufragen? - 27.Wie macht man auf dem Client richtig eine optimistische UI für eine Server Action?
- 28.Was passiert mit
redirect()innerhalb vontry/catchin einer Server Action? - 29.Wie unterscheidet sich
<Form>ausnext/formbei einem Suchformular von einem einfachen<form>? - 30.Was macht
generateMetadataim Vergleich zu einem statischen Exportmetadata? - 31.Wie unterstützt man im App Router mehrere Sprachen?
- 32.Wie liefert man aus einem Route Handler JSON mit Status 201?
- 33.Was ist Partial Prerendering (PPR) in Next.js 16?
- 34.Wie lädt man im App Router Daten für Client Components mit TanStack Query vorab?
- 35.Was passiert, wenn man eine Server Component in eine Datei mit
'use client'importiert? - 36.Wie führt man Code (etwa Analytics) nach dem Senden der Antwort aus, ohne den Nutzer aufzuhalten?
- 37.Wie sendet man in Next.js nur einen Teil der DB-Daten an den Client, damit nichts Überflüssiges (etwa ein Passwort-Hash) durchsickert?
- 38.Wie unterscheidet sich
revalidatePath('/blog/[slug]', 'page')vonrevalidatePath('/blog/my-post')? - 39.Wo speichert man einen geheimen API-Schlüssel, den eine Server Component nutzt?
- 40.Was macht
connection()ausnext/server? - 41.Warum ist
useFormStatusin Formularen mit Server Actions praktisch? - 42.Welche Datei legt das Fallback für einen Slot einer parallelen Route bei vollständigem Neuladen fest?
- 43.Wie unterscheidet sich eine statische Route beim Rendern von einer dynamischen?
- 44.Wo prüft man im App Router die Autorisierung richtig?
- 45.Wie begrenzt man, auf welchen Pfaden
proxy.tsläuft? - 46.Wofür ist
opengraph-image.tsxnützlich? - 47.Wo läuft der Code einer Client Component beim ersten Laden der Seite?
- 48.Wie werden Seitendaten nach einer Action aktualisiert, wenn
revalidateTag(tag, 'max')genutzt wird? - 49.Was steuert
staleTimesinnext.config? - 50.Wie gibt man aus einer Server Action Validierungsfehler an ein Formular zurück?
- 51.Wie hebt ein Layout den aktiven Tab unter seinen Kindsegmenten hervor?
- 52.Was passiert in Next.js 16, wenn ein Slot
@modaleiner parallelen Route keindefault.tsxhat? - 53.Wie unterscheidet sich ein Rewrite in
next.config.tsvon einem Redirect? - 54.Wo kann man allen Antworten Sicherheits-Header wie
X-Frame-Optionshinzufügen, ohne Seiten anzufassen? - 55.Ein Formular lädt über eine Server Action eine 5-MB-Datei hoch und scheitert. Was ist die wahrscheinliche Ursache?
- 56.Was macht
redirect()in einer Server Action bei einem Formular, das vor dem Laden von JavaScript abgeschickt wurde? - 57.Warum kann man
(await cookies()).set(...)nicht beim Rendern einer Server Component aufrufen? - 58.Wofür ist
output: 'standalone'nützlich? - 59.Wie erzeugt man im Code ein dynamisches Open-Graph-Bild (etwa mit dem Titel des Beitrags)?
- 60.Wie teilt man eine Sitemap mit 200.000 Produkt-URLs auf?
- 61.Wofür ist
instrumentation-client.ts? - 62.Was erlaubt
'use cache: private'? - 63.Wie hält man mit Cache Components
new Date()aus der statischen Hülle heraus? - 64.Wie liest eine tief verschachtelte Server Component das Segment
[lang]des Root-Layouts ohne Prop Drilling? - 65.Wofür ist
catchErrorausnext/error? - 66.Ein Monorepo-Paket
@acme/uiliefert nicht transpiliertes TypeScript. Wie nutzt man es in einer Next.js-App? - 67.Wie streamt man aus einem Route Handler schrittweise eine Antwort (etwa KI-Tokens)?
- 68.Was macht
export const maxDuration = 60in einer Seite oder einem Route Handler? - 69.Warum scheitert mit
cacheComponents: trueeinexport const revalidate = 60in einer Seite? - 70.Wie testet man eine
asyncServer Component empfohlenerweise? - 71.Wie ruft man eine Server Action aus dem
onClickeines Buttons auf (nicht aus einem Formular) und zeigt den Ladezustand? - 72.Warum behält ein Formular mit Cache Components den eingetippten Text, wenn man wegnavigiert und Zurück drückt?
- 73.Wann ist
prefetch={false}an<Link>sinnvoll? - 74.Was passiert bei der Navigation zwischen zwei Routen mit verschiedenen Root-Layouts (über Routengruppen)?
- 75.Eine Server Action funktioniert lokal, scheitert aber hinter einem Reverse Proxy mit anderem Host. Welche Option hilft?