UNPKG

usehooks-ts

Version:

React hook library, ready to use, written in Typescript.

29 lines 1.01 kB
import { useEffect, useState } from 'react'; import { useEventListener } from '../useEventListener'; function useReadLocalStorage(key) { var readValue = function () { if (typeof window === 'undefined') { return null; } try { var item = window.localStorage.getItem(key); return item ? JSON.parse(item) : null; } catch (error) { console.warn("Error reading localStorage key \u201C".concat(key, "\u201D:"), error); return null; } }; var _a = useState(readValue), storedValue = _a[0], setStoredValue = _a[1]; useEffect(function () { setStoredValue(readValue()); }, []); var handleStorageChange = function () { setStoredValue(readValue()); }; useEventListener('storage', handleStorageChange); useEventListener('local-storage', handleStorageChange); return storedValue; } export default useReadLocalStorage; //# sourceMappingURL=useReadLocalStorage.js.map