微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何通过反应导航重置到不同堆栈中的屏幕?

如何解决如何通过反应导航重置到不同堆栈中的屏幕?

我在一个Stack.Navigator中有一个“设置”屏幕,允许用户注销。我希望通过该注销操作将用户重置为位于其他Stack.Navigator内的登录屏幕。

React-Navigation 5.X的正确方法是什么?

解决方法

您可以通过在重置操作中首先指定堆栈的路由,然后将其指定为堆栈状态内特定屏幕的路由作为该路由的子级来完成此操作。

在下面的示例中,此重置操作将堆栈索引设置为0,并将用户导航到一个单独的“主页”堆栈,屏幕上的“着陆”是一个子窗口。

import { CommonActions } from '@react-navigation/native';

navigation.dispatch(
    CommonActions.reset({
        index: 0,routes: [
            {
                name: 'Home',state: {
                    routes: [{ name: 'Landing' }],},],}),);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。