如何在React导航中获得当前焦点选项卡名称



我在react导航中使用选项卡导航器。我想在更改选项卡时检测当前焦点选项卡
如有任何帮助,我们将不胜感激!

我正在使用:-react native:0.57.4,react navigation:2.16.0

我找到了答案。

class MyScreen extends Component {
static navigationOptions = () => {
return {
tabBarOnPress({ navigation, defaultHandler }) {
navigation.state.params.onTabFocus('tab_name');
defaultHandler();
}
};
};
componentDidMount() {
this.props.navigation.setParams({
onTabFocus: this.getCurrentTab
});
}
getCurrentTab = (tabName) => {
console.log("current tab >>>>>>", tabName);
};
}

///////////第二个解决方案/////////\///

可以使用NavigationEvents组件订阅这些导航事件。

  • onWillFocus:聚焦选项卡之前
  • onDidFocus:聚焦选项卡之后
  • onWillBlur:在失去对选项卡的关注之前
  • onDidBlur:在失去对选项卡的关注之后

最新更新