反应导航bottomTabNavigator“ createRouter不是函数”

时间:2020-02-10 17:29:55

标签: javascript reactjs react-native react-navigation

我创建了一个工作正常的stackNavigator(用于登录屏幕),然后创建了bottomTabsNavigator,但是由于某种原因,我收到此错误“创建路由器不是功能”,请检查以下屏幕截图:

Error Image

这是我的代码:

import {createBottomTabNavigator} from '@react-navigation/bottom-tabs';

/** Bottom tab navigator */
const Tab = createBottomTabNavigator();

const MyTabs = () => {
  return (
    <Tab.Navigator initialRouteName="Tab1">
      <Tab.Screen name="Tab1" component={Tab1} />
      <Tab.Screen name="Tab2" component={Tab2} />
      
    </Tab.Navigator>
  );
};

const App = () => {
  return (
    <Provider store={store}>
        <NavigationContainer>
          <MyTabs />
        </NavigationContainer>
    </Provider>
  );
};

我完全按照React Navigation 5.x文档的建议做了,但是仍然遇到这个问题。让我知道是否有人遇到过类似的事情。

2 个答案:

答案 0 :(得分:6)

只需在这里解决问题即可。

我已更新到所有库的最新版本

"@react-navigation/bottom-tabs": "^5.0.1",
"@react-navigation/core": "^5.1.0",
"@react-navigation/material-top-tabs": "^5.0.1",
"@react-navigation/native": "^5.0.1",
"@react-navigation/stack": "^5.0.1",

然后我删除了package-lock.json,

然后在终端中转到android文件夹,然后输入./gradlew clean

之后,您应该运行npx react-native run-android

关闭默认的地铁站,

然后运行npx react-native start --reset-cache,

这样做后效果很好

答案 1 :(得分:0)

确保已安装@react-navigation/native@react-navigation/bottom-tabs的最新版本:

npm install @react-navigation/native @react-navigation/bottom-tabs

然后清除缓存:

npm react-native start --reset-cache

或者如果使用Expo:

expo start -c