Under "react-navigation/stack" of react-navigation 6, It did well working all of function like useRoute, useNavigation..etc
But, I changed stack navigation to react-navigation/native-stack from react-navigation/stack.
native-stack does not found a route object in "GroupHeaders component"
Below my code.
import { createNativeStackNavigator, NativeStackHeaderProps } from "@react-navigation/native-stack";
const RootNavigation = createNativeStackNavigator();
<NavigationContainer>
<RootNavigation.Navigator>
<RootNavigation.Screen
name="Main-root"
component={TabNavigation}
options={{ headerShown: false }}
/>
<RootNavigation.Screen
name="PostDetail-root"
component={PostDetailContainer}
options={{ header: () => <GroupHeaders /> }}. // ***** HERE
/>
// ...other screen...
<Tab.Navigator
initialRouteName="home-tab"
//...
>
<Tab.Screen
name="home-tab"
component={HomeNavigation}
options={{
headerShown: false,
tabBarLabel: "Home",
//...
}}
/>
const GroupHeaders = ({}) => {
const route = useRoute(); //**** HERE, RN occurs error message of "~not find a route object~~"
// ... other code
you can use option paramter
<RootNavigation.Screen
name="PostDetail-root"
component={PostDetailContainer}
options={({ route }) => ({
tabBarLabel: (props) => <GroupHeaders route={route} {...props} />,
})}/> // ***** HERE
/>
function GroupHeaders({route}) {
console.log("route1",route);
return (
<Text>{route.name}</Text>
)
}