返回到React-Native中的上一个组件时调用函数

时间:2018-10-09 13:13:45

标签: react-native

我有一个在渲染之前将屏幕锁定为横向的组件。

当我点击next button时,我会转到下一个解锁方向的屏幕。

当我单击previous button时,我返回到第一个屏幕。 (导航由this.props.navigation.navigate('ScreenName')的{​​{1}}完成。)

现在屏幕被锁定在react-native-navigation方法中,当您返回到已渲染的组件时,是否有类似的方法被调用?

1 个答案:

答案 0 :(得分:0)

您可以在react-native-navigation中做到这一点的一种方法是向后传递参数。当您导航回组件时,传递一个指示其返回的参数。之后,在要使用该功能的文件中,让它监听gotBack属性。 使用参数向后导航: this.props.navigation.navigate('ScreenName', { wentBack: true, });

收听参数:

const { navigation } = this.props,
wentBack = navigation.getParam('wentBack', 'whatever default value - should be false'); 

然后在您的render方法中,您可以有条件地渲染任何您想要显示的内容:

render() {
  return (
    <View>
    {wentBack ? 'do something it went back!' : 'it didn't go back'}
    </View>
  );
}