React Native Navigation - 将Stack Navigator的navigationOptions放在Bottom Tab Navigator中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了React Native Navigation - 将Stack Navigator的navigationOptions放在Bottom Tab Navigator中相关的知识,希望对你有一定的参考价值。
如documentation of the createBottomTabNavigator中所述,导航器内的屏幕可以包含一个名为navigationOptions
的变量,其中它们配置不同的设置。我使用自己的组件成功完成了这项工作,但是,当我尝试将Stack Navigator放入Bottom Tab Navigator中时,我遇到了一个问题。
问题:在创建Stack Navigator时,我不确定在哪里放置navigationOptions
变量来自定义与我创建的Stack Navigator对应的Bottom Tab Navigator的tabIcon
。
我试过这个:(代码片段#1)
const navigator = createStackNavigator(
{
'MainKYCScreen': {
screen: KYCScreen
}
},
{
initialRouteName: "MainKYCScreen"
},
);
const AppContainer = createAppContainer(navigator);
// navigationOptions - start
AppContainer.navigationOptions = {
tabBarIcon: ({ focused }) => (
<NavButtonContainer focused={focused}>
<KYCIcon status={KYCIcon.TYPE_RED} />
</NavButtonContainer>
)
};
// navigationOptions - end
export default AppContainer;
这个:(代码片段#2)
const navigator = createStackNavigator(
{
'MainKYCScreen': {
screen: KYCScreen
}
},
{
initialRouteName: "MainKYCScreen"
},
);
const AppContainer = createAppContainer(navigator);
export default class KYCNavigator extends AppContainer {
// navigationOptions - start
static navigationOptions = {
tabBarIcon: ({ focused }) => (
<NavButtonContainer focused={focused}>
<KYCIcon status={KYCIcon.TYPE_RED} />
</NavButtonContainer>
)
}
// navigationOptions - end
}
将代码从navigationOptions - start
删除到navigationOptions - end
。把它放在那里似乎返回一个奇怪的错误。
有人能帮助我吗?
关于你的错误,只需从'react'包中导入React。
import React, {Component} from 'react'
为了解释为什么它应该被导入,我认为this可以解释原因。
以上是关于React Native Navigation - 将Stack Navigator的navigationOptions放在Bottom Tab Navigator中的主要内容,如果未能解决你的问题,请参考以下文章
使用 wix@react-native-navigation 运行 react-native 应用程序时出错
React Navigation 与 React Native Navigation [关闭]
在带有 wix/react-native-navigation 的模态中使用 react-native-gesture-handler (RNGH)
使用像 React Navigation 这样的基于 JS 的导航解决方案而不是使用像 Wix 的 React Native Navigation 这样的 Native Navigation 的缺点?