我正在使用 React Native 和 Redux 开发一个移动应用程序,我正面临一个软件设计问题。如果该操作成功,我想调用 REST API(异步操作)进行登录并导航到主视图。我正在使用 redux 和 thunk,所以我已经实现了异步操作,所以我的主要疑问是:我应该把导航到主视图的逻辑放在哪里?
我可以直接从操作访问导航器对象并在那里执行导航吗?我应该在登录组件中这样做吗?(正如我已经在做的那样 - 检查下面的代码)。
componentWillReceiveProps(nextProps){
if(nextProps.errorLoginMsg){
Alert.alert("Login Failed", nextProps.errorLoginMsg);
}
else if(!nextProps.user.isNull()){
this.props.navigator.replace({name: 'main'});
}
}
我对组件中的逻辑没有信心。似乎不是一个好习惯。有没有其他方法可以做到这一点?
谢谢