2017-05-12 3 views
0

Ich bin neu in der Reaktion native. Ich benutze native Aktion Schaltfläche reagieren und ich möchte, wenn die Schaltfläche geklickt wird, zeigen Sie dann andere Seite. Das ist mein Code, funktioniert aber immer noch nicht. Hast du eine Lösung?wie man action button reagiert native redirect andere Seite?

render() { 
    return (
     <View style={styles.container}> 
      <ActionButton buttonColor="#1E73C1" onPress={() => this.buttonPressed}> 
      </ActionButton> 
     </View> 
    ); 
    } 

buttonPressed() { 
    this.props.navigation.navigate('NewCase', {}); 
    } 

Antwort

0

Sie führen nicht alle auf Button passieren. Fix it mit ():

<ActionButton buttonColor="#1E73C1" onPress={() => this.buttonPressed()}>

Andere Weise sein würde:

<ActionButton buttonColor="#1E73C1" onPress={this.buttonPressed.bind(this)}>

Und wie in den Kommentaren gesagt, sollten Sie sicherstellen, dass Navigation tatsächlich in den Requisiten vorhanden ist.

0

Seien Sie sicher, dass die Navigations prop auf die Komponente

+0

können Sie dafür ein Beispiel machen ?. danke für die Antwort. :-) @David Vittori – Queen

0

Beispiel

<ActionButton buttonColor="#1E73C1" onPress={() => this.buttonPressed('page2')}> 

buttonPressed(page){ 
    this.props.navigator.replace({ 
    id: page, 
    }) 
} 

Sie haben soeben Button das ist gesetzt nicht wirklich nichts tun, wenn Sie ein button() den Übergang Sie button(), durch die sich eine gute Sache setzen müssen exec tun setzt diese Art von Funktion mit '_', wie folgt: _buttonPressed ('page2') und dann _buttonPressed (page), hilft es ein bisschen zu wissen, was Sie gerade tun