Sto sviluppando un'applicazione mobile con React Native e Redux e sto affrontando un problema di progettazione software. Voglio chiamare un'API REST (operazione asincrona) per l'accesso e navigare alla vista principale se l'operazione è andata a buon fine. Sto usando redux e thunk quindi ho già implementato le azioni asincrone, quindi il mio dubbio principale è: dove devo mettere la logica per navigare nella vista principale?React Native - Navigazione dopo un'azione asincrona
Posso accedere all'oggetto navigatore direttamente da un'azione e eseguire la navigazione lì? Devo farlo nel componente di login? (Come sto già facendo - controlla il codice qui sotto).
componentWillReceiveProps(nextProps){
if(nextProps.errorLoginMsg){
Alert.alert("Login Failed", nextProps.errorLoginMsg);
}
else if(!nextProps.user.isNull()){
this.props.navigator.replace({name: 'main'});
}
}
Io non sono sicuro di avere quella logica nel componente. Non sembra una buona pratica. C'è un altro modo per farlo?
Grazie