We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 1f6fcef commit aebc555Copy full SHA for aebc555
src/devtools/useLocalStorage.ts
@@ -11,13 +11,17 @@ const getItem = key => {
11
}
12
13
export default function useLocalStorage(key, defaultValue) {
14
- const [value, setValue] = React.useState(() => {
15
- const val = getItem(key)
16
- if (typeof val === 'undefined' || val === null) {
17
- return typeof defaultValue === 'function' ? defaultValue() : defaultValue
+ const [value, setValue] = React.useState()
+
+ useEffect(() => {
+ const initialValue = getItem(key)
18
19
+ if (typeof initialValue === 'undefined' || initialValue === null) {
20
+ setValue(typeof defaultValue === 'function' ? defaultValue() : defaultValue)
21
+ } else {
22
+ setValue(initialValue)
23
- return val
- })
24
+ }, []);
25
26
const setter = React.useCallback(
27
updater => {
0 commit comments