React native 屏幕上的动态标题更改
我有一个导航码:React native 屏幕上的动态标题更改,react-native,React Native,我有一个导航码: <NavigationContainer> <Stack.Navigator> <Stack.Screen name='Home' component={Home} options={{ headerShown: false }} /> <Stack.Screen name='Learning' component={Learning} options={{ headerTranspare
<NavigationContainer>
<Stack.Navigator>
<Stack.Screen name='Home' component={Home} options={{ headerShown: false }} />
<Stack.Screen name='Learning' component={Learning}
options={{
headerTransparent: true,
title: 'Learning',
headerTitleAlign: 'center',
}} />
</Stack.Navigator>
</NavigationContainer>
我将学习屏幕用于两个功能应用程序屏幕:
- A
- B
navigation.navigate('Learning',{screen'Learning'})}/>
navigation.navigate('Learning',{screen:'Repeats'})}/>
{screen:'Learning'}
正在加载一些其他数据
此屏幕具有标题标题
如何根据您单击的按钮加载不同的标题
我找不到一个解决方案,如何为基于函数和挂钩构建的组件执行此操作
选项道具可以使用函数并为您提供{route,navigation}
对象作为参数,因此要使用标题中的参数,可以执行以下操作:
<Stack.Screen
name="Learning"
component={Learning}
options={({ route }) => ({ title: route.params.screen })}
/>
({title:route.params.screen}
/>
我不确定函数组件和钩子在这种情况下有什么区别,但如果我误解了这个问题,您可以在函数组件中使用useNavigation
和useRoute
钩子,并执行与在类中相同的操作