在react.js中导航

时间:2014-12-23 16:56:54

标签: reactjs flux

在我的react.js(Fluxxor)应用程序中,我必须在不同的表单之间导航。 例如: 只要用户未经过身份验证,就会显示登录组件。一旦用户登录登录组件消失,就应显示条目组件(或其他内容)。从那里我可以打开条目详细信息组件(这意味着应该隐藏条目组件列表)。

最佳方法是什么?

我尝试过的事情:

  • 更换组件(卸载应隐藏的组件并安装应显示的组件)
  • 在DOM中拥有多个组件。 (但看起来这是不允许/可能的)
  • 拥有一个根组件,所有子组件(登录,列表,详细信息)并让他们的商店类决定组件是否可见)

感谢

1 个答案:

答案 0 :(得分:4)

我偏爱第三种方法,即让一个组件管理"状态"应用程序通过呈现不同的组件。然后,控制器视图负责注册子组件并在必要时与商店/服务交互。我通常使用react router并为每个控制器视图设置顶级路由。

以下伪代码表示结构:

<Router>
  <ControllerView>
   <SubComponent>
   <AnotherSubComponent>
  </ControllerView>

  <AnotherControllerView>
   <SubComponent>
   <AnotherSubComponent>
  </AnotherControllerView>
</Router>