CodeBlanks Logo Icon CodeBlanks

useToggle

Bir boolean state'i yöneten useToggle hook'unu yazmayı öğrenirsin.

useToggle

useToggle, en sık yazılan custom hook'lardan biridir. Bir boolean state ve onu tersine çeviren bir fonksiyon döndürür. Açılır menüler, modallar, onay kutuları için idealdir.

Yapı: const [on, setOn] = useState(false); const toggle = () => setOn(o => !o); return [on, toggle];. Dizi döndürmek, çağıran bileşenin isimleri serbestçe seçmesine izin verir.

Bu desen, useState'in sınırlı bir çeşididir: yalnızca iki değer (true/false) arasında geçiş yapar. Birden çok bileşende kullanılınca büyük kolaylık sağlar.

Dizi dönüş sebebi

Custom hook'lar genellikle dizi döndürür, çünkü dizi elemanlarına istediğin ismi verebilirsin: const [visible, toggleVisible] = useToggle();. Obje döndürsen isimler sabit kalırdı.

İkiden az veya çok değer döndürmek de kolaydır: return [count, increment, decrement, reset];. Bileşen ihtiyacı olanları alır, gerisini yok sayar.

Bu esneklik, custom hook'ları React'in kendi hook'ları (useState, useReducer) ile aynı stile koyar. Tutarlılık öğrenmeyi kolaylaştırır.

Uygulama useToggle yaz

Aşağıdaki iskeleti tamamla. useToggle hook'u yaz. useState(false) ile on state'i tanımla. toggle fonksiyonu () => setOn(o => !o) olsun. [on, toggle] dizisini döndür. Hook'u dışa aktar.

Başlangıç kodu

App.jsx
import { useState } from "react";

// useToggle hook'unu buraya yaz

Örnek çözüm

App.jsx
import { useState } from "react";

function useToggle() {
  const [on, setOn] = useState(false);
  const toggle = () => setOn((o) => !o);
  return [on, toggle];
}

export default useToggle;

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 useToggle ne döndürür?

  • Obje
  • Tek değer
  • Dizi: [value, toggle] Doğru cevap
  • Fonksiyon

Açıklama: useToggle [value, toggle] dizisi döndürür.

2 Toggle işlemi

Soru
Toggle fonksiyonu, değeri ____ ile tersine çevirir.
Cevap
Toggle fonksiyonu, değeri ! o ile tersine çevirir.

Açıklama: ! o ile tersine çevrilir.

3 useToggle parçalarını eşleştir

Kavram Anlamı
useState(false) İlk değer
toggle Tersine çevirir
return [on, toggle] Dizi
! o Yöntem

Orta seviye bölümündeki tüm dersler