Skip to content

barrydevp/redux-useful

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Redux Useful

Useful Store

NPM version NPM downloads Git

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

// 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 };

API

Full API

INSPIRE OF

About

my redux-userful packages

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published