2.0.1 • Published 4 years ago

kpdux v2.0.1

Weekly downloads
10
License
ISC
Repository
github
Last release
4 years ago

kpdux

Install

npm install kpdux redux

Usage

Init:

import kpdux from "kpdux";


const store = kpdux.createStore({
    "auth": {
        "state": {
            "token": ""
        },
        "reduces": {
            "REDUCER/TYPE": function(state, action) {
                if(/*  */) {
                    return {
                        /*  */
                        ...state
                    };
                }

                return state;
            }
        },
        "middlewares": {
            "MIDDLEWARE/TYPE": async function(action) {
                let state = this.getState();

                await this.exampleAction();
            }
        },
        "getters": {
            getToken(state, getters, rootState, rootGetters) {
                return state.token;
            }
        },
        "mutations": {
            setToken(state, token) {
                state.token = token;
            }
        },
        "actions": {
            async auth(login, password) {
                let state = this.getState();

                // send your data

                this.setToken("your token");
            },
            async exampleAction() {
                
            }
        }
    }
}, {
    // your reduces
}, {
    // your middlewares
});
import React from "react";
import {Provider} from "react-redux";
import ReactDOM from "react-dom";


ReactDOM.render(
    <Provider store={store.getStore()}>
        {/* Your APP */}
    </Provider>,
    document.getElementById("root")
);

With react-redux:

import React from "react";
import {connect} from "react-redux";
// ...

class AuthForm extends React.Component {
    // ...
    async login() {
        await this.props.login("login", "password");
    }
    // ...
    render() {
        // ...
    }
}


const putStateToProps = (state) => {
    return {
        // getters like function
        "token": state.auth.getToken()
        
        // getters like property
        "token": state.auth.getters.getToken
    };
};

const putActionsToProps = () => {
    return {
        // actions
        "login": store.auth.login
    };
};

export default connect(putStateToProps, putActionsToProps)(AuthForm);
2.0.1

4 years ago

2.0.0

4 years ago

1.0.18

4 years ago

1.0.17

5 years ago

1.0.16

5 years ago

1.0.15

5 years ago

1.0.14

5 years ago

1.0.13

5 years ago

1.0.12

5 years ago

1.0.11

5 years ago

1.0.10

5 years ago

1.0.9

5 years ago

1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago