Rumah > hujung hadapan web > tutorial js > Menguruskan Storan Tempatan dalam React dengan useLocalStorage Hook

Menguruskan Storan Tempatan dalam React dengan useLocalStorage Hook

Susan Sarandon
Lepaskan: 2025-01-27 02:44:37
asal
175 orang telah melayarinya

Managing Local Storage in React with useLocalStorage Hook

Artikel ini menunjukkan membina cangkuk yang boleh digunakan semula useLocalStorage React hook untuk pengurusan storan tempatan yang cekap. Ini memudahkan pengendalian data yang berterusan dalam aplikasi React anda, menawarkan pendekatan yang bersih dan selamat jenis.

1. Fungsi Utiliti Storan Tempatan

Sebelum mencipta cangkuk, kami membina fungsi pembantu untuk berinteraksi dengan localStorage:

  • setItem(key: string, value: unknown): Menyimpan data dengan selamat dalam localStorage. Ia mensirikan nilai menggunakan JSON.stringify dan mengendalikan kemungkinan ralat (seperti melebihi had storan) dengan mengelognya ke konsol.

  • getItem<T>(key: string): T | undefined: Mendapat dan menghuraikan data daripada localStorage. Ia menggunakan generik TypeScript (<T>) untuk keselamatan jenis, mengembalikan undefined jika kunci tidak wujud. Pengendalian ralat disertakan.

  • removeItem(key: string): Mengalih keluar pasangan nilai kunci daripada localStorage, juga dengan pengendalian ralat.

2. useLocalStorage Cangkuk

Inti penyelesaian ini ialah useLocalStorage cangkuk:

  • Permulaan: Cangkuk mengambil key (untuk localStorage) dan initialValue sebagai parameter. Ia memulakan keadaannya menggunakan useState, menyemak localStorage untuk data sedia ada; jika tidak dijumpai, ia menggunakan initialValue.

  • Kemas Kini Negeri (handleDispatch): Fungsi ini mengemas kini kedua-dua keadaan komponen dan localStorage. Ia menerima sama ada nilai baharu atau fungsi (untuk mengemas kini berdasarkan keadaan sebelumnya), memastikan penyegerakan.

  • Pembersihan Negeri (clearState): Fungsi ini menetapkan semula keadaan kepada undefined dan mengalih keluar item daripada localStorage.

  • Nilai Pulangan: Cangkuk mengembalikan tatasusunan: [value, handleDispatch, clearState], memberikan akses kepada nilai semasa, fungsi kemas kini dan fungsi jelas.

3. Menggunakan Cangkuk

Berikut ialah cara menggunakan useLocalStorage dalam komponen React:

<code class="language-javascript">import useLocalStorage from "./useLocalStorage"; // Path to your hook file

function Counter() {
  const [count, setCount, clearCount] = useLocalStorage<number>("counter", 0);

  return (
    <div>
      <h1>Counter: {count}</h1>
      <button onClick={() => setCount((prev) => prev + 1)}>Increment</button>
      <button onClick={() => setCount((prev) => prev - 1)}>Decrement</button>
      <button onClick={clearCount}>Reset</button>
    </div>
  );
}</code>
Salin selepas log masuk

Contoh ini menunjukkan kefungsian kaunter yang berterusan. Nilai count disimpan dalam localStorage dan kekal dalam muat semula halaman.

Kod Penuh (localStorage.ts dan useLocalStorage.ts)

kod lengkap untuk localStorage.ts dan useLocalStorage.ts disediakan dalam input asal dan tetap tidak berubah.

Kesimpulan

cangkuk adat ini menyediakan penyelesaian yang teguh, jenis selamat, dan boleh diguna semula untuk menguruskan data berterusan dalam aplikasi React menggunakan localStorage. API bersihnya memudahkan pembangunan dan meningkatkan pemeliharaan kod.

Atas ialah kandungan terperinci Menguruskan Storan Tempatan dalam React dengan useLocalStorage Hook. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan