next-cache-components
von vercel-labsAktivieren Sie Partial Prerendering und fortschrittliches Caching für React-Komponenten in Next.js 16+ mit next-cache-components. Optimieren Sie die Frontend-Performance durch die Kombination von statischen, zwischengespeicherten und dynamischen Inhalten.
Überblick
Was ist next-cache-components?
next-cache-components ist eine Erweiterung für Next.js 16+, die fortschrittliche Caching-Strategien für React-Komponenten ermöglicht. Durch die Aktivierung von Cache Components können Entwickler statische, zwischengespeicherte und dynamische Inhalte innerhalb einer einzigen Route kombinieren, was die Performance und Flexibilität von Frontend-Anwendungen verbessert. Diese Erweiterung eignet sich besonders für Teams, die skalierbare Web-Apps mit Next.js entwickeln und dabei eine feingranulare Kontrolle über Rendering und Datenaktualität wünschen.
Für wen ist next-cache-components geeignet?
Diese Erweiterung richtet sich an Frontend-Entwickler, die mit Next.js 16 oder höher arbeiten. Besonders nützlich ist sie für Deployments auf Vercel oder ähnlichen Plattformen sowie für Projekte, bei denen die Optimierung der Rendering-Geschwindigkeit und die Steuerung von Cache-Lebensdauern entscheidend sind. Wenn Ihre App statische Inhalte, zwischengespeicherte Daten und Echtzeit-Updates ausbalancieren muss, bietet next-cache-components eine praktische Lösung.
Probleme, die next-cache-components löst
- Ermöglicht Partial Prerendering (PPR) für gemischte Inhaltsrouten
- Erlaubt das Caching asynchroner Daten mit individuellen Lebensdauern und Tags
- Vereinfacht die Verwaltung von statischen, zwischengespeicherten und dynamischen Komponenten
- Verbessert Frontend-Performance und Nutzererlebnis
Anwendung
Installationsschritte
- Installieren Sie die Erweiterung mit dem Befehl:
npx skills add https://github.com/vercel-labs/next-skills --skill next-cache-components - Lesen Sie die Datei
SKILL.mdfür eine kompakte Zusammenfassung und praktische Beispiele. - Erkunden Sie weitere Dateien wie
README.md,AGENTS.mdundmetadata.jsonfür vertiefende Informationen.
Aktivierung von Cache Components
- Setzen Sie in Ihrer
next.config.ts:import type { NextConfig } from 'next' const nextConfig: NextConfig = { cacheComponents: true, } export default nextConfig - Dies ersetzt die frühere
experimental.ppr-Option und aktiviert Cache Components für Ihr Projekt.
Unterstützte Inhaltstypen
Statisch (Auto-Prerendered)
- Verwenden Sie synchronen Code und reine Berechnungen für Inhalte, die zur Build-Zeit gerendert werden.
- Beispiel:
export default function Page() { return ( <header> <h1>Our Blog</h1> <nav>...</nav> </header> ) }
Zwischengespeichert (use cache Direktive)
- Für asynchrone Daten, die nicht bei jeder Anfrage neu geladen werden müssen, verwenden Sie die
use cacheDirektive und legen Sie die Cache-Lebensdauer mitcacheLifefest. - Beispiel:
async function BlogPosts() { 'use cache' cacheLife('hours') const posts = await db.posts.findMany() return <PostList posts={posts} /> }
Dynamisch (Suspense)
- Für Daten, die stets aktuell sein müssen, umschließen Sie Komponenten mit Reacts
Suspense. - Beispiel:
import { Suspense } from 'react' export default function Page() { return ( <> <BlogPosts /> {/* Zwischengespeichert */} <Suspense fallback={<p>Loading...</p>}> <UserPreferences /> {/* Dynamisch */} </Suspense> </> ) }
Anpassung an Ihr Projekt
- Nutzen Sie die Erweiterung als Referenz und passen Sie deren Workflow an Ihr Repository und Ihre Tools an. Vermeiden Sie wörtliches Kopieren; integrieren Sie stattdessen Caching-Strategien, die zu den Anforderungen Ihrer App passen.
FAQ
Wo finde ich praktische Beispiele?
Schauen Sie in die Datei SKILL.md für klare Codebeispiele und Erklärungen. Der Reiter "Files" bietet Zugriff auf die gesamte Dateistruktur, inklusive Referenzen und Hilfsskripten.
Ist next-cache-components mit älteren Next.js-Versionen kompatibel?
Nein, diese Erweiterung ist für Next.js 16 und höher konzipiert. Für frühere Versionen sollten alternative Caching-Strategien in Betracht gezogen werden.
Wie steuere ich Cache-Lebensdauer und Tags?
Verwenden Sie die Direktiven cacheLife und cacheTag innerhalb Ihrer Komponentenfunktionen, um individuelle Cache-Dauern und Tags festzulegen. Die Syntax finden Sie in den Beispielen in SKILL.md.
Wann sollte ich Suspense für dynamische Inhalte verwenden?
Nutzen Sie Suspense, wenn Sie Laufzeitdaten benötigen, die bei jeder Anfrage aktuell sein müssen, wie etwa Benutzerpräferenzen oder sessionspezifische Informationen.
Passt next-cache-components zu meinem Projekt?
Wenn Ihre App eine Mischung aus statischen, zwischengespeicherten und dynamischen Inhalten in einer einzigen Route benötigt und Sie Next.js 16+ verwenden, ist diese Erweiterung sehr gut geeignet. Für rein statische Seiten oder Apps ohne asynchrone Datenanforderungen können einfachere Rendering-Strategien ausreichend sein.
