2017-07-26 3 views
0

Ich habe Tabnavigator, der Stacknavigators in ihnen verschachtelt und wenn ich einen der Tabnavigators Bildschirmparameter ändern, navigiert es zu dieser Registerkarte (Änderung geschieht in ComponentWillReceiveProps mit Redux-Wert, der es zu aktualisieren). Gibt es eine Möglichkeit, dieses Verhalten zu verhindern? Wenn nicht, wie würden Sie vorschlagen, einen Titel zu schreiben, der aktualisiert wird, wenn ich die Sprache der reaktiven Muttersprache ändere?Verhindern der Navigation beim Ändern von Reaktivnavigationsparametern

Image of unwanted navigation behaviour

setLanguage (language) { 
    AsyncStorage.setItem('@Language', language) 
     .then(() => { 
      Localization.setLanguage(language) 
      this.props.setLocalization(Localization) 
     }) 
    } 

setLocalization: (localization) => dispatch(SettingsActions.setLocalization(localization)) 

Und auf Komponente navigiert es, aber ich will es nicht

static navigationOptions =() => { 
    return { 
     title: Localization.events_2 
    } 
} 

componentWillReceiveProps (nextProps) { 
    if (nextProps.localization && nextProps.localization.language !== 
    this.props.localization.language) { 
     const {setParams} = this.props.navigation 
     setParams({ title: nextProps.localization.events_2 }) 
    } 
} 
+0

Bitte fügen Sie ein Bild bezüglich des Verhaltens Ihres Problems bei. Und bitte fügen Sie einen Code für Ihr Problem – UmarZaii

+0

https://github.com/aajiwani/react-navigation-aware-helper Sie können dies versuchen, ich habe erstellt, um dieses params Problem zu vereinfachen. – aajiwani

Antwort

0

ich das Verhalten durch eine Änderung der params fixiert navigieren, wenn der Benutzer stattdessen auf die Registerkarte navigiert wenn die Sprache geändert wird.

Verwandte Themen