İki Çeşit Bileşen
Coddy'nin React Journey'sinin Next.js Temel Esasları bölümünün bir parçası. Ders 17 / 47.
Bu bölümde şimdiye kadar yazdığınız her bileşen fark etmemiş olabileceğiniz bir yerde çalıştı: sunucuda. Bu açtığınız özel bir mod değildir: varsayılandır ve Next.js'deki tek en büyük fikirdir.
Tam olarak iki tür bileşen vardır ve her biri size diğerinin sağlayamayacağı bir şey sunar.
Sunucu bileşenleri: varsayılan
- Sayfa gönderilmeden önce, bir kez sunucuda çalışırlar
asyncolabilirler, böylece verileri doğrudan bileşenin içindeawaitedebilirler- Tarayıcıya hiç JavaScript göndermezler: kullanıcı kodu değil, sonucu indirir
Püf noktası şudur: Sayfa tarayıcıya ulaştığında, bir sunucu bileşeninin işi bitmiştir. Bu bir anlık görüntüdür (snapshot). Hiçbir şeyi hatırlayamaz, bir tıklamaya tepki veremez veya değişemez.
İstemci bileşenleri: etkinleştirme
Sayfanın yanıt vermesini istediğinizde, en üste tek bir satır ekleyerek dosyayı tarayıcıya dahil edersiniz:
'use client';Bu, dosyayı bir istemci bileşeni olarak işaretler ve yalnızca istemci bileşenleri şunları kullanabilir:
- Hook'lar:
useState,useEffectve benzerleri - Olay işleyicileri:
onClick,onChange, … - Tarayıcı API'leri:
window,localStorage
Bu ödünleşime dikkat edin. Sunucu bileşeni hızlı ve sessizdir ancak donuktur. İstemci bileşeni canlıdır, ancak kodunun tarayıcıda indirilip çalıştırılması gerekir.
Bu nedenle bundan sonra her bileşen hakkında soracağınız soru "hangisini beğeniyorum?" değil, "bu özel parçanın kullanıcıya yanıt vermesi gerekiyor mu?" olacaktır. Cevap hayır ise (ki genellikle öyledir), sunucuda bırakın.
Kendin dene
Bu ders bir kod alıştırması içermiyor.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Next.js Temel Esasları bölümündeki tüm dersler
4Sunucu ve İstemci
İki Çeşit BileşenHatayı Okuma'use client' Satırıİstemci Parçalarını Küçük Tutmaİstemci İçinde SunucuÖzet: Sunucu ve İstemci