1.0.7 • Published 4 years ago
redux-useful v1.0.7
Redux Useful
Useful Store
New update v1.0.7
- update default stateReconciler
- update Readme
Quickstart
npm install redux-useful
Usage Examples: 1. Basic Usage 2. Store with Persist
Basic Usage
Basic create Store without Persist more about redux-persist here
Example source code
// counterModel.js
import { put, delay } from "redux-saga/effects";
const reducers = {
increment: (state, action) => {
return state + 1;
},
decrement: (state, action) => {
return state - 1;
}
};
const sagas = {
incrementAsync: function* (){
yield delay(1000);
yield put({type: "counter/increment"});
}
};
export default {
namespace: "counter", // is prefix of your reducer
state: 0, // default state
sagas,
reducers
};
// store.js
import { createStoreFul } from "redux-useful";
import counterModel from "./counterModel.js";
const models = {
counter: counterModel
};
const { store } = createStoreFul(models, {
reduxPersist: false
});
export { store };
Store With Persist
Create Store with Persist using AsyncStorage more abou redux-persist here
// counterModel.js
import { put, delay } from "redux-saga/effects";
const reducers = {
increment: (state, action) => {
return state + 1;
},
decrement: (state, action) => {
return state - 1;
}
};
const sagas = {
incrementAsync: function* (){
yield delay(1000);
yield put({type: "counter/increment"});
}
};
export default {
namespace: "counter", // is prefix of your reducer
state: 0, // default state
sagas,
reducers
};
// store.js
import { createStoreFul } from "redux-useful";
import { AsyncStorage } from "react-native";
import counterModel from "./counterModel.js";
const models = {
counter: counterModel
};
const options = {
root: {
persistConfig: {
key: "root",
storage: AsyncStorage,
}
},
reduxPersist: true
}
const { store, persistor } = createStoreFul(models, options);
export { store, persistor };