首页 > 解决方案 > 我如何关闭当前屏幕并使用 react-native-router-flux 打开另一个屏幕

问题描述

我正在使用 react-native-router-flux 并尝试关闭当前屏幕,然后打开另一个屏幕,我该怎么做?react-native-router-flux 的版本是 4.0.0

标签: react-nativereact-native-androidreact-native-iosreact-native-router-flux

解决方案


react-navigation-router-flux API 具有不同的导航功能(推送替换重置...),您必须使用的功能取决于您的需求:

  • 如果您想从第一个屏幕导航到第二个屏幕,然后您希望能够返回做,Actions.pop()那么您只需要通过 do 导航到第二个屏幕Actions.push("second-screen")

  • 另一方面,如果您只需要从第一个屏幕更改为第二个屏幕(并且您不想在那之后返回),那么您可以这样做Actions.reset("second-screen"),这会重置导航堆栈。

  • 或者您可能还需要使用Actions.replace("second-screen")which 从导航堆栈中删除“第一屏”,然后将“第二屏”推送到它,因此您也将导航。

为此,您当然应该事先声明您的路线,例如,您可以执行以下操作:

import { Router, Scene } from 'react-native-router-flux';

...


  <Router>
   ...
    <Scene>
      <Scene key="first-screen" component={FirstComponent} />
      <Scene key="second-screen" component={SecondComponent} />
    </Scene>
    ...
  </Router>

在这里您可以找到所有Actions 文档


推荐阅读