【问题标题】:React Native Navigator - transition and unmount previous sceneReact Native Navigator - 转换和卸载前一个场景
【发布时间】:2015-11-13 20:44:01
【问题描述】:

我正在开发一个 React Native 应用程序并使用跨平台的 Navigator 实现。在一个实例中,我有一个场景,即“登录”路线,当用户成功登录时,我想推送到另一个场景,即“主页”路线。

有两种方法可以做到这一点:navigator.immediatelyResetRouteStack([routes.home])navigator.push(routes.home)。在第一个实现中,登录场景将被卸载,但我没有获得场景转换的好处。在第二个实现中,我得到了一个场景转换,但登录路由不会被卸载,即使我不需要转换回它。

有没有办法实现“Push and Unmount Previous”转换?

【问题讨论】:

    标签: reactjs react-native


    【解决方案1】:

    routeStack 是所有场景的数组。当你的转换完成时,你只需将它从数组中删除怎么样?

    【讨论】:

      【解决方案2】:

      【讨论】:

      • .replace(route) 不使用过渡。
      【解决方案3】:

      经过进一步的实验,navigator.resetTo(route) 被证明是一个合适的替代方案。请注意,这不允许您使用一堆路由进行重置。

      【讨论】:

      • 我在使用 navigator.resetTo 时没有得到过渡。你是怎么做到的?
      【解决方案4】:

      Navigator.resetTo(route) 只会在您从不同的索引重置时进行转换。如果您在初始路线上,resetTo 不会提供过渡。对于 index > 0,resetTo 提供与 pop 相同的转换!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-05-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-10-12
        • 1970-01-01
        相关资源
        最近更新 更多