redux-saga-final-form
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

redux-saga-final-form

Simple integration between react-final-form and redux-saga

This module is created as a replacement for unsupported redux-promise-listener or react-redux-promise-listener

Installation

npm install --save redux-saga-final-form

or

yarn add redux-saga-final-form

Usage

in your form component

import { useListener } from 'redux-saga-final-form';
import { Form } from "react-final-form";

export const MyComponent = () => {
    const formListener = useListener(SUBMIT_START_ACTION, SUBMIT_SUCCESS_ACTION, SUBMIT_FAIL_ACTION);
    return (
        <Form
            onSubmit={formListener}
            render={(formRenderProps) => (
                <form onSubmit={formRenderProps.handleSubmit}>
                    ...
                </form>
            )}
        />
    );
};

and in your sagas:

import { handleListeners } from "redux-saga-final-form";
import createSagaMiddleware from "redux-saga";

const store = createStore(
  reducer,
  initialState,
  applyMiddleware(...otherMiddleware, handleListeners)
)

SUBMIT_START_ACTION example:

export const submitStartAction = (payload: { formField1: string }) => ({
    type: SUBMIT_START_ACTION
    payload
});

Readme

Keywords

none

Package Sidebar

Install

npm i redux-saga-final-form

Weekly Downloads

46

Version

2.0.0

License

MIT

Unpacked Size

11 kB

Total Files

6

Last publish

Collaborators

  • kostenko