Needle-Pinpointing Machine

    redux-dry-ts-actions
    TypeScript icon, indicating that this package has built-in type declarations

    1.3.0 • Public • Published

    redux-dry-ts-actions

    A micro library to help create action constructors and action types for redux. Written in, and designed for TypeScript.

    Don't repeat yourself:

    1. You define each action constructor together with its action type string.
    2. TypeScript will then infer the action type union for you.

    Declaring action constructors and action type

    const actions = {
        addTodo: createAction('addTodo', (text: string) => ({ text })),
        deleteTodo: createAction('deleteTodo', (id: string) => ({ id })),
        clearCompleted: createAction('clearCompleted'),
    };
     
    type Action = ActionTypeFromActionCreators<typeof actions>;
     
    /* The Action type will be correctly inferred as:
    type Action =
        { type: 'addTodo', payload: { text: string } } |
        { type: 'deleteTodo', payload: { id: string } } |
        { type: 'clearCompleted' };
    */

    Using action constructors

    private onAddTodoClicked = () => {
        this.props.dispatch(actions.addTodo(this.state.text));
    };
     
    private onClearClicked = () => {
        this.props.dispatch(actions.clearCompleted());
    };

    Install

    npm i redux-dry-ts-actions

    DownloadsWeekly Downloads

    62

    Version

    1.3.0

    License

    MIT

    Unpacked Size

    3.43 kB

    Total Files

    4

    Last publish

    Collaborators

    • laszlopandy