Server Components
React Server Components é uma das inovações mais importantes do React, permitindo renderização no servidor com zero JavaScript no cliente.
Server Component
// app/posts/Posts.js (Server Component)
import { db } from '@/lib/db';
export default async function Posts() {
// Executa apenas no servidor
const posts = await db.posts.findMany();
return (
<div>
{posts.map(post => (
<PostCard key={post.id} post={post} />
))}
</div>
);
}Client Component
'use client'; // Diretiva necessária
import { useState } from 'react';
export default function Counter() {
const [count, setCount] = useState(0);
return (
<button onClick={() => setCount(count + 1)}>
Count: {count}
</button>
);
}Híbrido
// Server Component pode usar Client Components
import Counter from './Counter'; // Client Component
export default function Page() {
return (
<div>
<h1>Server Component</h1>
<Counter /> {/* Client Component */}
</div>
);
}
1 comment