Next.js App Router'da Server Component ile Client Component arasındaki fark nedir?
Cevap
App Router'da bileşenler varsayılan olarak Server Component'tir.
| Server Component | Client Component ("use client") | |
|---|---|---|
| Çalıştığı yer | Yalnızca sunucu | Sunucuda ön render + tarayıcıda |
| Tarayıcıya JS gönderir mi? | Hayır | Evet |
useState, useEffect, event handler | Kullanamaz | Kullanabilir |
| Veritabanı, gizli anahtar, dosya sistemi | Doğrudan erişebilir | Erişemez |
async bileşen | Olabilir | Olamaz |
Doğru mimari: sayfanın büyük kısmı sunucu bileşeni, etkileşim gereken küçük yapraklar istemci bileşeni. "use client" sınırı ağaçta ne kadar aşağıda olursa paket o kadar küçük olur.
Sunucu bileşeni bir istemci bileşenine yalnızca serileştirilebilir prop geçebilir (fonksiyon geçemez, Server Action hariç).
İlgili Next.js soruları
Bu konuda başka bir soru biliyor musun?
Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.