Под «реагирующим крючком localstorage» подразумевается специальный крючок React, который позволяет легко хранить и извлекать данные в localStorage браузера. Вот несколько методов, которые можно использовать с примерами кода:
-
useLocalStorageПользовательский хук:import React, { useState } from 'react'; const useLocalStorage = (key, initialValue) => { const [value, setValue] = useState(() => { const storedValue = localStorage.getItem(key); return storedValue ? JSON.parse(storedValue) : initialValue; }); React.useEffect(() => { localStorage.setItem(key, JSON.stringify(value)); }, [key, value]); return [value, setValue]; }; // Usage const App = () => { const [name, setName] = useLocalStorage('name', ''); const handleNameChange = (event) => { setName(event.target.value); }; return ( <div> <input type="text" value={name} onChange={handleNameChange} /> <p>Hello, {name}!</p> </div> ); }; -
Сохранение и получение данных:
// Save to localStorage localStorage.setItem('key', 'value'); // Retrieve from localStorage const value = localStorage.getItem('key'); -
Удаление данных:
// Remove a specific item from localStorage localStorage.removeItem('key'); // Clear all items from localStorage localStorage.clear(); -
Обработка данных JSON:
const data = { name: 'John', age: 30 }; // Save JSON data to localStorage localStorage.setItem('data', JSON.stringify(data)); // Retrieve and parse JSON data from localStorage const storedData = JSON.parse(localStorage.getItem('data')); -
Обработка массивов:
const array = ['apple', 'banana', 'cherry']; // Save array to localStorage localStorage.setItem('array', JSON.stringify(array)); // Retrieve and parse array from localStorage const storedArray = JSON.parse(localStorage.getItem('array'));