ReactでのLocalStorageフックの使用方法


ReactアプリケーションでLocalStorageを使用するために、Reactのフックである「useLocalStorage」を使うことができます。このフックは、LocalStorageの操作を簡単に行うためのカスタムフックです。

以下に、ReactでLocalStorageフックを使用する方法といくつかのコード例を示します。

  1. ローカルストレージにデータを保存する
import { useState } from 'react';
function App() {
  const [name, setName] = useLocalStorage('name', '');
  const handleInputChange = (event) => {
    setName(event.target.value);
  };
  return (
    <div>
      <input type="text" value={name} onChange={handleInputChange} />
      <p>Hello, {name}!</p>
    </div>
  );
}

この例では、useLocalStorageフックを使用してnameというキーでローカルストレージにデータを保存しています。入力フィールドの値が変更されるたびに、handleInputChange関数が呼び出され、入力値がnameに保存されます。保存された値はHello, {name}!というメッセージに表示されます。

  1. ローカルストレージからデータを読み取る
import { useEffect } from 'react';
function App() {
  const [name, setName] = useLocalStorage('name', '');
  useEffect(() => {
    // コンポーネントがマウントされた時にローカルストレージからデータを読み取る
    const storedName = localStorage.getItem('name');
    if (storedName) {
      setName(storedName);
    }
  }, []);
  return (
    <div>
      <p>Hello, {name}!</p>
    </div>
  );
}

この例では、useEffectフックを使用してコンポーネントがマウントされた時にローカルストレージからデータを読み取っています。localStorage.getItemを使用して、キーがnameの値を取得し、それをsetName関数を使って状態に設定します。

以上がReactでLocalStorageフックを使用する方法とコード例です。このフックを使うことで、Reactアプリケーションで簡単にローカルストレージを操作できます。必要に応じて他のLocalStorage操作も同様に実行することができます。