【发布时间】:2018-01-05 22:32:45
【问题描述】:
我在一个 RN 应用程序中使用 Redux。 如何在用户登录时重定向用户? 我应该把代码放在哪里: ActionCreator 或 Reducer ?对不起,这个新手 (ps:我知道 auth 正在使用 console.log)
这里是动作创建者
export const loginUser = ({email, password}) => {
return (dispatch) => {
Meteor.loginWithPassword(email, password, (error) => {
if (error) {
console.log('erreur dans le sign in')
return dispatch ({type: LOGIN_USER_FAIL, payload: email});
} else {
console.log('pas d erreur dans le signin')
return dispatch({type: LOGIN_USER_SUCCESS, payload: email });
};
});
};
};
还有 AuthReducer
export default (state= INITIAL_STATE, action) => {
//console.log(action);
switch (action.type) {
case EMAIL_CHANGED:
console.log('Changed!')
return {...state, email: action.payload}; // {...state} => so the object is updated
case PASSWORD_CHANGED:
console.log('password changed')
return{...state, password: action.payload};
case LOGIN_USER_FAIL:
console.log('from login user fail reducer');
return {...state, email:'fail'};
case LOGIN_USER_SUCCESS:
console.log('from login user success reducer');
return {...state, email:'success'}
default:
return state;
}
};
【问题讨论】:
标签: meteor react-native redux redux-thunk