导航redux并基于API调用做出本机反应

时间:2018-01-18 11:15:46

标签: react-native navigation react-redux

我正在使用redux并在我的移动应用程序中做出本机反应。

我想根据API响应重定向到另一个屏幕。我不知道该怎么做。

我在我的应用程序中使用了action,reducer和store。

您能帮我找到标准解决方案吗?

提前谢谢。

2 个答案:

答案 0 :(得分:1)

请参阅doc如何将导航连接到Redux - > https://reactnavigation.org/docs/guides/redux

答案 1 :(得分:1)

处理用户导航的一种方法,例如注册用户,首先要定义三个动作:register,registerSuccess,registerError。

负责处理导航的人将是registerSuccess,它只返回一个类型' REGISTER_SUCCESS'。

然后你的reducer将会是这样的(我使用的是immutable.js https://facebook.github.io/immutable-js/docs/#/

 const initialState = fromJS({
   submitSuccess: false,
 });

function reducer(state = initialState, action) {
  case REGISTER_SUCCESS:
     return state.update('submitSuccess', (v) => !v));
   default:
     return state;

然后在您的容器中,您可以使用componentWillReceiveProps重定向您的用户

 componentWillReceiveProps(nextProps) {
   if (nextProps.submitSuccess) {
     // redirect your user 
   }
 }