Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wwayne/redux-reset
Give redux the ability to reset the state
https://github.com/wwayne/redux-reset
javascript react redux state-management
Last synced: about 1 month ago
JSON representation
Give redux the ability to reset the state
- Host: GitHub
- URL: https://github.com/wwayne/redux-reset
- Owner: wwayne
- License: mit
- Created: 2016-03-26T16:24:00.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-11-16T08:20:38.000Z (about 7 years ago)
- Last Synced: 2024-11-10T07:39:51.431Z (about 2 months ago)
- Topics: javascript, react, redux, state-management
- Language: JavaScript
- Homepage:
- Size: 5.86 KB
- Stars: 96
- Watchers: 4
- Forks: 7
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# redux-reset
[![Version](http://img.shields.io/npm/v/redux-reset.svg)](https://www.npmjs.org/package/redux-reset)
[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat)](https://github.com/feross/standard)
[![Circle CI](https://circleci.com/gh/wwayne/redux-reset/tree/master.svg?style=svg)](https://circleci.com/gh/wwayne/redux-reset/tree/master)## Installation
```sh
npm install redux-reset
```## Basic Usage
1.Setup in createStore```JavaScript
import reduxReset from 'redux-reset'
...
const enHanceCreateStore = compose(
applyMiddleware(...),
reduxReset() // Will use 'RESET' as default action.type to trigger reset
)(createStore)
const store = enHanceCreateStore(reducers)
```2.Dispatch reset action
```JavaScript
store.dispatch({
type: 'RESET'
})
```## Advanced Usage
#### Set any custom action.type to trigger reset```JavaScript
import Enum from 'es6-enum'
const APP = Enum('RESET')const enHanceCreateStore = compose(
applyMiddleware(...),
reduxReset(APP.RESET) // Set action.type here
)(createStore)
const store = enHanceCreateStore(reducers)AFTER:
store.dispatch({
type: APP.RESET
})
```#### Reset and specific to a new initial state
```JavaScript
store.dispatch({
type: 'RESET',
state: {app: {user: 'anotherUser'}} // Will use this as new initial state
})
```#### Reset and specific to a new initial state, new state comes from a specific params in action
```JavaScript
import Enum from 'es6-enum'
const APP = Enum('RESET')const enHanceCreateStore = compose(
applyMiddleware(...),
reduxReset({
type: APP.RESET,
data: 'initialStateComesFrom'
})
)(createStore)
const store = enHanceCreateStore(reducers)AFTER:
store.dispatch({
type: APP.RESET,
initialStateComesFrom: {app: {user: 'anotherUser'}}
})
```## License
MIT