react-use-localstorage2 v4.0.13
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
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
- Dropped babel in favor of
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):
This project follows the all-contributors specification. Contributions of any kind welcome!