react-use-localstorage2
depends on stable v16.8.1~
Access Local Storage like storage with React hooks, for Server and Client.
How to use it
import React from 'react';
import ReactDOM from 'react-dom';
import useStorage from 'react-use-localstorage2';
import './styles.css';
function App() {
const [item, setItem] = useStorage('name', 'Initial Value');
return (
<div className="App">
<h1>Set Name to store in Local Storage</h1>
<div>
<label>
Name:{' '}
<input
type="text"
placeholder="Enter your name"
value={item}
onChange={e => setItem(e.target.value)}
/>
</label>
</div>
</div>
);
}
const rootElement = document.getElementById('root');
ReactDOM.render(<App />, rootElement);
Demo
Changelog Fork
v4
breaking change and support save any JSON.stringify able value
3.4.3
- Breaking changes with null and undefined
- Allow use any localStorage-like storage, so u can use for Server SSR
- remove pre-build pack
Changelog Origin
Expand Changelog
3.4.0
This version "Watch changes on storage and change state".
Reference: https://github.com/dance2die/react-use-localstorage/pull/30
Thank you @VitorLuizC for the PR and @Svish for the review.
3.3.0
Reverted the implementation of setValue
to set localStorage
value directly, instead of depending on useEffect
.
Reference: window.localstorage updated after value managed by useLocalStorage #29
3.2.1
The library is covered by test. Thank you so much, @SeanMcP~
3.0.0
Decided to go with @TheAifam5 the following breaking change as the type is derived from React type definition.
-
Breadking change:
setIteme
type is changed from(item: string) => void
() toReact.Dispatch<string>
-
Updated infrastructure by @TheAifam5
🙏 in PR #13-
Dropped babel in favor of
tsc
+uglifyjs
-
Replaced npm with yarn
-
Added husky for pre-commit git hooks
-
Source map has been dropped from distribution
-
distribution is moved from
dist
tolib
folder2.4.1
-
-
Added
useLocalStorage
return type explicitly to generate correctindex.d.ts
typing file.2.4.0
-
Added TypeScript typings as suggested by @TheAifam5 in Issue #9
2.3.0
-
Fixed a bug where initial value is returned all the time #7 by @lilasquared
🙏 2.2.0
-
Sets initial value in local storage
2.1.0
-
Can optionally pass an initial value
-
This is to prevent form field from being uncontrolled.
2.0.0
-
Breaking change -
setItem
doesn't requirekey
1.1.1
-
Updated to React v16.8.1, which contains the patched Hooks
1.1.0
-
Updated dev dependency version
1.0.0
-
Updated to React v16.8.0, which contains the stable Hooks
0.0.6
-
Changed the language from JavaScript to TypeScript
-
It has minimized the distribution file greatly
Contributors
Thanks goes to these wonderful people (emoji key):
Aaron Roberts |
Sung Kim |
TheAifam5 |
Vitor Luiz Cavalcanti |
Sean McPherson |
Torleif Berger |
This project follows the all-contributors specification. Contributions of any kind welcome!