我碰到过这个 solution ,正在尝试订阅导航生命周期的更新
导航器.js
const App = createStackNavigator( { screen1: { screen: MainScreen }, screen2: { screen: SecondaryScreen }, }, { cardStyle: { backgroundColor: 'transparent' } } ); const MainNavigator = createAppContainer(App); export default MainNavigator;
我想知道是否有可能订阅 navigator 文件?或者我没有其他选择,只能在每个单独的屏幕上订阅?
navigator
您可以为每个屏幕添加侦听器,如下所示
constructor(props) { super(props); this.props.navigation.addListener( 'willFocus',//event name payload => { //do your work here } ); }
其他事件名称 以下内容: 'onDidFocus', 'onWillBlur' ,'onDidBlur'
'onDidFocus', 'onWillBlur' ,'onDidBlur'
reference