如何使用反应原生导航 v2 添加侧边栏抽屉?
Posted
技术标签:
【中文标题】如何使用反应原生导航 v2 添加侧边栏抽屉?【英文标题】:How to add sidebar drawer with react native navigation v2? 【发布时间】:2019-01-03 01:54:24 【问题描述】:使用 react-native-navigation v1,您可以像这样设置抽屉:
drawer:
left:
screen: 'ScreenName'
在 react-native-navigation 的文档中,他们提到仍然支持抽屉,
但是没有例子说明它的用法。我尝试了与 v1 相同的方法,但没有奏效。有没有人以某种方式实现了它?
【问题讨论】:
【参考方案1】:在 RNN V2 及更高版本中,您只需使用 sideMenu 而不是旧的抽屉选项 Ex 即可添加抽屉:
Navigation.events().registerAppLaunchedListener(() =>
Navigation.setRoot(
root:
sideMenu:
id: "sideMenu",
left:
component:
id: "Drawer",
name: "navigation.Drawer"
,
center:
stack:
id: "AppRoot",
children: [
component:
id: "App",
name: "navigation.AppScreen"
]
);
Take a look at this 并导航到 sideMenu
为了关闭抽屉,使用 Navigation.mergeOptions 并像这样传递可见的 false
<Button onPress=this.hideSideMenu/>
hideSideMenu()
Navigation.mergeOptions(this.props.componentId,
sideMenu:
left:
visible: false
);
【讨论】:
你能告诉我如何在某个页面禁用 @pkyeck 没有实现 hideSideMenu 我得到 instance.render() is undefined 错误。知道这是为什么吗?我正在尝试重新创建您的侧边菜单 @user2763557 我刚刚编辑了答案 - 这是 devoka 的答案 @devoka,你能帮我解决我的错误吗?我在谷歌上找不到任何东西... 链接已损坏。以上是关于如何使用反应原生导航 v2 添加侧边栏抽屉?的主要内容,如果未能解决你的问题,请参考以下文章