gpt4 book ai didi

react-native - 嵌套的 Drawer-StackNavigator,触发 "DrawerOpen"不适用于 React-Native

转载 作者:行者123 更新时间:2023-12-04 04:58:58 26 4
gpt4 key购买 nike

我正在使用 React Native 和 react-navigation 制作应用。

[我的应用的层次结构]

*抽屉(应用程序)

ㄴ堆栈导航器

ㄴ堆栈导航器

我想要的是触发 navigation.navigate('DrawerOpen');

我可以通过从左边缘拖动来显示我的抽屉,但它不会通过按下导航标题左侧的“菜单按钮”来触发。我花了很多时间来存档这个。请帮助我。

const Nav = StackNavigator({
mainnav_list:{
screen: (props) => <TodoList {...props} dbCollectionName={props.screenProps.dbCollectionName}/>,
navigationOptions:({navigation}) => ({
headerLeft:(
<TouchableOpacity onPress={() => {console.log(navigation); navigation.navigate('DrawerOpen');}}>
<Text style={{color:'white', marginLeft:15}}>Menu</Text>
</TouchableOpacity>
)
})
},
mainnav_detail:{screen: TodoDetail}
}
,
{
navigationOptions:(props) => ({
title:props.screenProps.dbCollectionName,
headerBackTitle:null,
headerStyle:{backgroundColor:'#000'},
headerTitleStyle:{color:'#fff'},
headerTintColor:'#fff',
})
})

const AppDrawer = DrawerNavigator(
{
drawer1:{screen:() => <Nav screenProps={{dbCollectionName:'todos'}}/> },
drawer2:{screen:() => <Nav screenProps={{dbCollectionName:'todos2'}}/> }
})

AppRegistry.registerComponent('TodosFS', () => AppDrawer);

最佳答案

在新版本的 reactnavigation 中打开、关闭或切换你的 DrawerNavigator 只需使用以下内容

this.props.navigation.openDrawer();
this.props.navigation.closeDrawer();
this.props.navigation.toggleDrawer();

https://reactnavigation.org/docs/en/drawer-based-navigation.html

关于react-native - 嵌套的 Drawer-StackNavigator,触发 "DrawerOpen"不适用于 React-Native,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47794833/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com