通过遵循此示例,我正在使用带有Redux的Next.js的应用程序,这是其中的一部分store.js
// REDUCERS
const authReducer = (state = null, action) => {
switch (action.type){
case actionTypes.FETCH_USER:
return action.payload || false;
default:
return state;
}
}
export const rootReducer = combineReducers({
user: authReducer,
form: reduxForm,
});
// ACTIONS
export const fetchUser = () => {
return (dispatch) => {
axios.get('/api/current_user')
.then(res => dispatch({
type: actionTypes.FETCH_USER,
payload: res.data
}));
};
};
export const submitLogin = (values) => async dispacth => {
const res = await axios.post('/api/login', values);
// Router.push('/');
// console.log(res)
dispacth({ type: actionTypes.SUBMIT_LOGIN, payload: res.data });
};
和客户端,例如 header
function mapStateToProps (state) {
const { user } = state
return { user }
}
export default connect(mapStateToProps)(Header)
当我console.log('############=>', this.props.user);
的道具和我没有登录时,它显示为空,但显示一些额外的数据,例如下面的屏幕截图
但是当我登录并console.log('############=>', this.props.user);
显示正确的数据时,没有额外的数据,例如下图
我做错了什么?请帮我。谢谢