Skip to content
This repository has been archived by the owner on May 17, 2022. It is now read-only.

xDisfigure/redux-toolkit-saga

 
 

Repository files navigation

Redux-toolkit-saga

Build Status npm version npm downloads

Installation

yarn add redux-toolkit-saga
# or
npm install redux-toolkit-saga --save

createSliceSaga

name required description
name YES A string name for this slice of state. Generated action type constants will use this as a prefix
caseSagas YES An object containing "case sagas" functions (functions intended to handle a specific action type
sagaType NO SagaType.Normal, SagaType.Watch, SagaType.TakeLatest, SagaType.TakeEvery(default)

Example

import { createSliceSaga, SagaType } from "redux-toolkit-saga";
import { PayloadAction } from "@reduxjs/toolkit";

const slice = createSliceSaga({
  name: "testSlice",
  caseSagas: {
    *action1 (action: PayloadAction<string>) {
      yield console.log("ok1", action.payload);
    },
    *action2 (action: PayloadAction<number>) {
      yield console.log("ok2", action.payload);
    },
  },
  sagaType: SagaType.Watch,
});

const composeSaga = slice.saga; // call composeSaga in root saga

const { action1, action2 } = slice.actions; // action with caseSagas

Example

About

Style redux-saga like @reduxjs/toolkit

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 91.5%
  • JavaScript 8.5%