【发布时间】:2023-02-10 03:21:35
【问题描述】:
所以我正在使用 react navigation v5,并且遇到了这个问题。我的导航开始于:
const RootAppNavigator = () => {
return(
<RootApp.Navigator>
<RootApp.Screen name="App" component={NavigationScreen} />
</RootApp.Navigator>
)
}
export default function App() {
let [fontsLoaded] = useFonts({
Lobster_400Regular,
});
// if (!fontsLoaded) {
// return <AppLoading />;
// }
return <NavigationContainer><RootAppNavigator /></NavigationContainer>;
}
然后将用户重定向到 NavigationScreen:
const HomeStack = createStackNavigator();
const ProfileStack = createStackNavigator();
const Tab = createBottomTabNavigator();
export default function NavigationScreen() {
const HomeStackNavigator = () => {
return (
<HomeStack.Navigator initialRouteName="Home">
<HomeStack.Screen name="Home" component={HomeScreen}/>
</HomeStack.Navigator>
)
}
const ProfileStackNavigator = () => {
return(
<ProfileStack.Navigator initialRouteName="Profile" screenOptions={{headerStyle: {elevation: 0},cardStyle: {backgroundColor: '#ffffff'}}}>
<ProfileStack.Screen name="Profile" component={ProfileScreen}/>
</ProfileStack.Navigator>
)
}
return (
<Tab.Navigator
initialRouteName="HomeS"
>
<Tab.Screen name="HomeS" component={HomeStackNavigator} />
<Tab.Screen name="ProfileS" component={ProfileStackNavigator} />
</Tab.Navigator>
);
}
现在由于某种原因我无法理解,首先呈现主屏幕,但是只要我单击选项卡导航器上的配置文件屏幕,就会呈现配置文件屏幕,但在这两个屏幕之间开始无限循环。(通过登录找到它他们的 componentDidMount 函数,切换在移动设备上是不可见的。)。在某个时候循环停止,我得到一个最大更新深度超出错误。
任何帮助将非常感激。
【问题讨论】:
标签: reactjs react-native react-navigation react-navigation-v5