如何修改抽屉导航器项



DrawerNavigatorItems文档中,它具有以下属性:

  • items- 路由数组,可以修改或覆盖

它说你可以修改数组。

我该怎么做?

它没有解释什么是"路由数组"。只是字符串?一个对象?

我想做的一个例子是获取完整的数组并在最后添加一个额外的数组,类似于

items: [...items, someNewItem]

一种解决方案是定义我们的自定义组件。此外,我们可以利用 Redux 来管理状态。

摘自我创建的应用程序:

//The navigation part
const MainDrawer=createDrawerNavigator({
MainNavigation,
K:KChartViewScreen
},{
contentComponent:CoinDrawer,
edgeWidth:-1 //to disable gesture from bound open the drawer in unexpected screen. but you could do some work to enable it and without problem, I just handle in an easy way.
});

以下是CoinDrawer:

class CoinDrawer extends React.Component{
renderMarkets(){
...
}
render(){
return (
<View>

<ScrollView>
<SafeAreaView style={styles.container} forceInset={{ top: 'always', horizontal: 'never' }}>
{this.renderMarkets()}
</SafeAreaView>
</ScrollView>
</View>
)
}
function mapStateToProps(state){
return {
config:state.config,
crypto:state.crypto,
trade:state.trade
}
}
export default connect(mapStateToProps,{SetCurrentMarket})(CoinDrawer);

希望这能帮助你。

您可以在导航文件中传递抽屉导航项。您可以创建一个如下所示

import { createDrawerNavigator } from 'react-navigation-drawer'
const MainNavigator = createDrawerNavigator(
{
Main,
Landing,
},
{
contentComponent: Drawer,
},
)

我希望您了解我们可以制作不同类型的导航器,如switchstackdrawer等。 在此之后,您可以在AppNavigator中调用您的抽屉导航器,如下所示

const AppNavigator = createStackNavigator(
{
MainNavigator,
Account,
Success,
},
{
initialRouteName: 'MainNavigator',
headerMode: 'none',
},
)

现在,无论您将在 MainNavigator 对象中插入什么路线,它都会显示在抽屉中。 可能有几种使用导航服务的方法,我用了这个。 希望这有帮助。

相关内容

  • 没有找到相关文章

最新更新