https://github.com/bmatcuk/redux-storage-engine-sessionstorage
window.sessionStorage engine for redux-storage
https://github.com/bmatcuk/redux-storage-engine-sessionstorage
Last synced: over 1 year ago
JSON representation
window.sessionStorage engine for redux-storage
- Host: GitHub
- URL: https://github.com/bmatcuk/redux-storage-engine-sessionstorage
- Owner: bmatcuk
- License: mit
- Created: 2016-02-19T21:35:38.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2016-02-20T01:16:46.000Z (over 10 years ago)
- Last Synced: 2025-02-06T02:37:07.326Z (over 1 year ago)
- Language: Makefile
- Size: 4.88 KB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# [redux-storage-engine-sessionstorage][]
[](https://david-dm.org/bmatcuk/redux-storage-engine-sessionstorage)
[](https://david-dm.org/bmatcuk/redux-storage-engine-sessionstorage#info=devDependencies)
[](https://www.npmjs.com/package/redux-storage-engine-sessionstorage)
[](https://www.npmjs.com/package/redux-storage-engine-sessionstorage)
[](https://www.npmjs.com/package/redux-storage-engine-sessionstorage)
`window.sessionStorage` based engine for [redux-storage][].
## Installation
npm install --save redux-storage-engine-sessionstorage
## Usage
Stores everything inside `window.sessionStorage`.
```js
import createEngine from 'redux-storage-engine-sessionstorage';
const engine = createEngine('my-save-key');
```
**Note**: Session Storage is limited to the tab/window in which it has been set.
This means that if a user opens your app in a new tab or window, they'll get a
new session storage. The session storage is only really useful if your app
consists of multiple pages (since all pages on the domain will have access to
it), or if the user navigates away and returns in the same tab/window.
**Warning**: `sessionStorage` does not expose a async API and every save/load
operation will block the JS thread!
**Warning**: Some browsers like IE<=11 does not support Promises! You could
use something like [es6-promise][] to polyfill.
[redux-storage]: https://github.com/michaelcontento/redux-storage
[redux-storage-engine-sessionstorage]: https://github.com/bmatcuk/redux-storage-engine-sessionstorage
[es6-promise]: https://github.com/stefanpenner/es6-promise