【发布时间】:2019-08-10 14:10:21
【问题描述】:
我在带有react-navigation 的 React Native 应用程序中使用了选项卡导航器、堆栈导航器和切换导航器的组合。请注意,我必须将选项卡导航器的每个屏幕都放在其自己的堆栈导航器中,以便使用内置的标题功能。
功能有效。但我最终得到了 Feed 和 Profile 页面的 2 个标题,如下所示:
我只希望每个屏幕都有自己的标题,评论屏幕有一个后退按钮。我知道代码不是很干净,将所有这些导航器放在一起会消耗很多开销。那么实现这一目标的最佳方法是什么?
App.js
const FeedScreenStack = createStackNavigator({
FeedStack: {
screen: feed,
navigationOptions: {
headerTitle: "Feed"
}
}
});
const ProfileScreenStack = createStackNavigator({
ProfileStack: {
screen: profile,
navigationOptions: {
headerTitle: "My Profile"
}
}
})
const TabStack = createBottomTabNavigator({
Feed: { screen: FeedScreenStack },
Profile: { screen: ProfileScreenStack }
});
const AppStack = createStackNavigator({
Tab: TabStack,
Comments: {
screen: comments,
navigationOptions: {
headerTitle: "Comments"
},
}
});
const MainStack = createSwitchNavigator(
{
Home: AppStack,
Auth: AuthStack
},
{
initialRouteName: 'Home'
}
);
const AppContainer = createAppContainer(MainStack);
【问题讨论】:
标签: reactjs react-native react-navigation stack-navigator tabnavigator