2015-04-21 8 views
10

aktualisieren und Bildschirm zwischen einem Login eines Registers wechseln will:Reagieren NavigatorIOS nicht Titel ersetzen()

navToLogin() { 
    this.refs.nav.replace({ 
     title: "Login", 
     component: LoginScene, 
     rightButtonTitle: "Sign Up", 
     onRightButtonPress: this.navToRegister.bind(this) 
    }); 
} 

navToRegister() { 
    this.refs.nav.replace({ 
     title: "Sign Up", 
     component: RegisterScene, 
     rightButtonTitle: "Login", 
     onRightButtonPress: this.navToLogin.bind(this) 
    }); 
} 

render() { 
    return (
     <NavigatorIOS 
      ref = "nav" 
      style={styles.navigator} 
      initialRoute={{ 
       component: LoginScene, 
       title: "Login", 
       rightButtonTitle: "Sign Up", 
       onRightButtonPress: this.navToRegister.bind(this) 
      }} 
     /> 
    ); 
} 

Obwohl die Ansicht korrekt aktualisiert wird, die title und rightButton ändern sich nicht nach dem Aufruf nav.replace(). Wenn ich nav.push() verwende, funktioniert alles wie erwartet.

Ich benutze diese Komponente irgendwie falsch?

+0

Verwandte Ausgabe auf GitHub: https://github.com/facebook/react-native/issues/894 – Lapixx

+0

.. .das war tatsächlich ein Duplikat von https://github.com/facebook/react-native/issues/476 – Lapixx

Antwort

3

Sie verwenden es nicht falsch, das ist ein Bug NavigatorIOS. Wenn Sie können, ist es wahrscheinlich wert, Navigator stattdessen zu verwenden, da das besser unterstützt wird (Facebook verwenden es tatsächlich intern)