首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用前一个/不同堆栈的goBack()

使用前一个/不同堆栈的goBack()
EN

Stack Overflow用户
提问于 2017-08-03 09:53:01
回答 2查看 4.8K关注 0票数 3

我正在为我所希望的是一个简单的问题而奋斗。我有多个StackNavigators,每个屏幕上都有不同的屏幕,除了.navigate之外,我还使用一个抽屉在主要堆栈之间移动。如下所示:

  • 主堆栈
    • 主屏幕(入口)
    • 构件剖面

  • 收件箱堆栈
    • 收件箱屏幕
    • 信息详细信息屏幕

在消息详细信息屏幕上,用户可以导航到配置文件。所以消息详细信息>概要文件。这很好,因为它在整个应用程序中都这样做。同一堆栈中的导航功能非常好,无论前进还是后退。我正在使用标准的.navigate来继续前进。

代码语言:javascript
复制
this.props.navigation.navigate('MemberProfilePage')

但是,如果我点击后退按钮--或者设置一个自定义的后退按钮--用户就会被带回到主屏幕。如果我点击抽屉里的收件箱,屏幕仍然会显示信息的细节。

但我真的很想说:留言细节>个人资料.配置文件goBack()到消息详细信息.

我已经尝试了默认的goBack(),我尝试过像这样发送一个回动作:

代码语言:javascript
复制
const backAction = NavigationActions.back({
  key: 'ProfileScreen'
})

代码语言:javascript
复制
const backAction = NavigationActions.back({
  key: null
})

谢谢你的指导。

编辑:关于在抽屉中设置backButton的最初建议似乎有效。但这并不能解决问题。

我不想被带回到当前堆栈的初始屏幕。我想回到我在另一个堆栈中导航的屏幕。

EN

Stack Overflow用户

发布于 2017-08-03 11:14:24

在您的DrawerNavigatorConfig中更改此道具

代码语言:javascript
复制
backBehavior='none' //default is initialRoute

backBehavior -- back按钮应该导致切换到初始路由吗?如果是,则设置为initialRoute,否则设置为none。默认为initialRoute行为。

https://reactnavigation.org/docs/navigators/drawer#DrawerNavigatorConfig

检查它是否有效..。

票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45480755

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档