React native 反应导航如何关闭抽屉导航器嵌套堆栈导航器&xFF1F;
我想关闭React native 反应导航如何关闭抽屉导航器嵌套堆栈导航器&xFF1F;,react-native,react-navigation,React Native,React Navigation,我想关闭屏幕上的抽屉:ExportClues,但它不工作 这是我的代码。 const Drawer = DrawerNavigator( { Navigators: { screen: Navigators }, { initialRouteName: 'Navigators', drawerWidth: Metrics.screenWidth - 95, drawerPos
屏幕上的抽屉:ExportClues
,但它不工作
这是我的代码。
const Drawer = DrawerNavigator( {
Navigators: {
screen: Navigators
},
{
initialRouteName: 'Navigators',
drawerWidth: Metrics.screenWidth - 95,
drawerPosition: 'right',
contentComponent: MenuNavigator
}
})
const Navigators = StackNavigator({
...screen
})
const MenuNavigator = StackNavigator({
ExportClues: {
screen: ExportClues,
},
...other screen
})
它是一个组件:
export default class index extends Component {
render() {
return(
<View
style={{flex: 1, backgroundColor: '#ffffff'}}
>
<TouchableOpacity
onPress={()=>{
this.props.navigation.navigate('DrawerClose');
// It is not work
}}
>
<TouchableOpacity/>
</View>
)
}
}
导出默认类索引扩展组件{
render(){
返回(
{
this.props.navigation.navigate('DrawerClose');
//这不是工作
}}
>
)
}
}
对不起,我的英语很差
如何将
MenuNavigator
父导航器设置为DrawerNavigator
?查看您提供的链接,您试图错误地包含抽屉组件:
你写
从“./Drawer”导入抽屉
并尝试使用组件
但是您的drawer.js文件正在导出“CustomerManagerDrawerNavigator”
这意味着您的代码应该是
从“/drawer”导入CustomerManagerDrawerNagivator
您的组件应该被称为
在render()函数中
如果你想使用抽屉驱动,你需要改变你的
const MenuNavigator = StackNavigator({
到
要在抽屉里关上抽屉,你可以打电话
this.props.navigation.navigate('DrawerClose'); // close drawer
我看到您有,但您没有在Navigator配置中向传递任何navigationOptions,因此您没有访问navigate功能的权限。您需要类似以下代码的代码:
navigationOptions: ({navigation}) => ({
.../*Your navigation options here */
}),
将导航作为道具传递到打开的抽屉
我会查看位于的DroperNavigator的React导航主页以了解更多详细信息,或者如果可能,发布一个指向工作存储库的链接您好,谢谢您的回答!但是它无法解决,你可以帮我演示吗?谢谢,我更新了上面的答案,指出了你的App.js和Drawer.js文件中需要纠正的问题。
this.props.navigation.navigate('DrawerClose'); // close drawer
navigationOptions: ({navigation}) => ({
.../*Your navigation options here */
}),