我有一个在渲染之前将屏幕锁定为横向的组件。
当我点击next button
时,我会转到下一个解锁方向的屏幕。
当我单击previous button
时,我返回到第一个屏幕。
(导航由this.props.navigation.navigate('ScreenName')
的{{1}}完成。)
现在屏幕被锁定在react-native-navigation
方法中,当您返回到已渲染的组件时,是否有类似的方法被调用?
答案 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>
);
}