React Server Components (RSC) sind eines der wichtigsten Features in Next.js 15. Sie ermöglichen es, Komponenten ausschließlich auf dem Server zu rendern — ohne JavaScript an den Client zu senden.
// app/blog/page.tsx — Server Component (Standard)
import { prisma } from "@/lib/prisma"
export default async function BlogPage() {
const posts = await prisma.blogPost.findMany({
where: { status: "PUBLISHED" },
orderBy: { publishedAt: "desc" },
})
return (
<div>
{posts.map((post) => (
<article key={post.id}>
<h2>{post.titleDe}</h2>
<p>{post.descriptionDe}</p>
</article>
))}
</div>
)
}
Hinweis: Server Components sind der Standard in Next.js 15. Du musst
"use client"nur dann hinzufügen, wenn du Browser-APIs, State oder Event-Handler brauchst.
| Feature | Server Component | Client Component |
|---|---|---|
| Datenbank-Zugriff | ✅ | ❌ |
useState / useEffect | ❌ | ✅ |
Event-Handler (onClick) | ❌ | ✅ |
| Browser-APIs | ❌ | ✅ |
| SEO-kritische Inhalte | ✅ | ⚠️ |
"use client"-Direktiven in LayoutsServer Components verändern grundlegend, wie wir React-Anwendungen bauen. Der Schlüssel liegt darin, die Grenze zwischen Server und Client bewusst zu ziehen.