Javascript 反应本机路由器流量-如何调用场景';s法

Javascript 反应本机路由器流量-如何调用场景';s法,javascript,android,react-native,react-native-router-flux,Javascript,Android,React Native,React Native Router Flux,我想在按下导航栏的右键时调用场景组件中的函数 在父项中: <Router style={routerStyle.router} navigationBarStyle={navBarStyle.navBar} titleStyle={navBarStyle.navTitle} leftButtonStyle={navBarStyle.leftButtonStyle} drawerImage={hamburgerI

我想在按下导航栏的右键时调用场景组件中的函数

在父项中:

<Router
        style={routerStyle.router}
        navigationBarStyle={navBarStyle.navBar}
        titleStyle={navBarStyle.navTitle}
        leftButtonStyle={navBarStyle.leftButtonStyle}
        drawerImage={hamburgerIcon}>
    <Scene
        key='History'
        component={History}
        title='History'
        type='reset'
        rightButtonImage={mailIcon}
        onRight={this.sendMail} <-- ON THIS
        rightButtonStyle={navBarStyle.rightButtonStyle}
        rightButtonIconStyle={navBarStyle.rightButtonIconStyle} />
</Router>


您可以使用Actions.refresh刷新活动场景的道具。当我被这个路由器包卡住时,我把它当作逃生舱


注意Component何时以及为什么会接收props,这样您就不会无意中调用toggleModal。

使用Actions.History({modalVisible:true})或Actions.refresh({modalVisible:true})如何,但这是将其设置为prop。然后,您将观察组件WillReceiveProps的变化。它起作用了!特别是我用路由器中的
sendMail(){Actions.refresh();}
componentWillReceiveProps(){this.toggleModal();}toggleModal(){this.setState({modalVisible:!this.state.modalVisible});}
修复了它,请在场景中发布一个答案,以便我可以接受:)
openModal() {
  this.setState({modalVisible: true}); <-- DO THIS
}
closeModal() {
  this.setState({modalVisible: false});
}