内部动作调度不是功能

时间:2019-09-27 02:35:34

标签: reactjs redux

我有这个authActions.js文件:

export function setCurrentUser(user) {
    return {
        type: FETCH_USER,
        user
    }
}

export function login(loginData) {
    return dispatch => {
        fetch('/api/user/login', {
            method: 'POST',
            body: loginData,
            headers: {
                'Content-Type': 'application/json'
            }
        }).then((res) => res.json())
        .then(data => {
            let token = data;
            localStorage.setItem("token", token);
            dispatch(setCurrentUser)(token);
        });

    }
}

告诉我dispatch(setCurrentUser)(token);不是功能。为什么会这样呢?我该如何解决?

编辑:

现在我的减速器没有应用值。

const initialState = {
    isAuthenticated : false,
    user : { "Name" : "rz" }
}

export default function(state = initialState, action) {
    switch(action.type) {
        case FETCH_USER:
            console.log(action.payload);
            return {
                isAuthenticated: !isEmpty(action.payload),
                user: action.payload
            }
        default: 
            return state;
    }
}

有效负载具有数据,但永远不会覆盖初始状态。

0 个答案:

没有答案