sador.me/src/utils/storage.ts
2025-02-09 17:25:34 +01:00

16 lines
485 B
TypeScript

import { useState, useEffect } from "react";
const useLocalStorage = (key: string, initialValue: string): [string, React.Dispatch<React.SetStateAction<string>>] => {
const [value, setValue] = useState<string>(() => {
const stored = localStorage.getItem(key);
return stored ? JSON.parse(stored) : initialValue;
});
useEffect(() => {
localStorage.setItem(key, JSON.stringify(value));
}, [key, value]);
return [value, setValue];
}
export default useLocalStorage;