tabBarOnPress 在 React Navigation v5 中不可用

Muh*_*oob 5 react-native react-navigation react-navigation-bottom-tab react-navigation-v5

我正在使用 React Navigation v5,@react-navigation/bottom-tabs我的标签看起来像这样。

<NavigationContainer>
  <Tab.Navigator>
    <Tab.Screen name="Home" component={HomeScreen} />
    <Tab.Screen name="Modal" component={ModalScreen} />
    <Tab.Screen name="Settings" component{SettingsScreen} />
  </Tab.Navigator>
Run Code Online (Sandbox Code Playgroud)

我想在“主页设置”选项卡上打开屏幕,但在“模式”选项卡上,我想打开一个模式,为此,使用 React Navigation v4,可以使用tabBarOnPress它来运行回调,但在 React Navigation v5 中不可用,tabBarOnPressReact Navigation v5有什么替代方案吗?

任何帮助,将不胜感激!

sat*_*164 10

您需要使用tabPress事件:

<Tabs.Screen
  name="Modal"
  component={ModalScreen}
  listeners={{
    tabPress: e => {
      // Prevent default action
      e.preventDefault();
    },
  }}
/>
Run Code Online (Sandbox Code Playgroud)

https://reactnavigation.org/docs/bottom-tab-navigator#events

https://reactnavigation.org/docs/navigation-events#listeners-prop-on-screen