Custom hook nedir? Bir örnek yazın.

Cevap

Custom hook, adı use ile başlayan ve içinde başka hook'lar kullanan bir fonksiyondur. Bileşenler arasında durumlu mantığı (stateful logic) paylaşmanın yoludur; state'in kendisi paylaşılmaz, her kullanımda ayrı kopya oluşur.

function useFetch(url) {
  const [veri, setVeri] = useState(null);
  const [hata, setHata] = useState(null);
  const [yukleniyor, setYukleniyor] = useState(true);

  useEffect(() => {
    const kontrol = new AbortController();
    setYukleniyor(true);
    fetch(url, { signal: kontrol.signal })
      .then(r => { if (!r.ok) throw new Error(r.statusText); return r.json(); })
      .then(setVeri)
      .catch(e => { if (e.name !== "AbortError") setHata(e); })
      .finally(() => setYukleniyor(false));
    return () => kontrol.abort();          // url değişirse eski isteği iptal et
  }, [url]);

  return { veri, hata, yukleniyor };
}
  1. Virtual DOM nedir ve reconciliation nasıl çalışır?KolayReactFrontend
  2. Listelerde key prop neden önemlidir? Index kullanmak neden sorunludur?KolayReactFrontend
  3. Controlled ve uncontrolled component farkı nedir?KolayReactFrontend
  4. useEffect bağımlılık dizisi nasıl çalışır?OrtaReactFrontend
  5. useMemo ile useCallback arasındaki fark nedir?OrtaReactFrontend
  6. Gereksiz render'ları nasıl tespit eder ve önlersiniz?ZorReactFrontend

Bu konuda başka bir soru biliyor musun?

Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.

Soru ekle