【问题标题】:React/Redux Where to save StateReact/Redux 在哪里保存状态
【发布时间】:2016-08-15 10:06:42
【问题描述】:

我无法理解一些 ReactJS 和 Redux 原则,

在 Redux 中,我们有一个 store 和一组 reduceres,它们可以提供您的最终状态(这部分我得到了)。

组件从其父组件接收道具,在 Redux 的情况下,它通过提供者组件传递完整状态。

现在,让我们假设这个用例,我的应用程序状态是这样的:

auth :  { name,id, ..etc} -> this is actually a JWT Token with a set of claims...

我正在构建一个容器(页面),以便能够编辑用户配置文件、此处的问题以及我遇到问题的地方,我还希望此页面能够处理任意用户编辑(以防管理员正在编辑帐户) .

我正在使用这样的 redux-router 渲染我的页面:

  <Route path="/user" component={RequiresAuth(UsersPage) } >
      <IndexRoute component={RequiresAuth(UsersOverview) }/>
      <Route path="/user/overview" component={UsersOverview} />
      <Route path="/user/account" component={AccountManagement} >
        <IndexRoute component={RequiresAuth(AccountManagement) }/>
          <Route path="/user/account/:userid" component={AccountManagement} />
      </Route>

所以阅读文档,我假设我的道具将有一个用户 ID,如果存在,它将覆盖我的默认用户。

问题: 这种方法正确吗?路由处理?

如果我在路由上传递了一个用户 ID 参数,我该如何继续加载用户信息以及在哪里加载?在我看来,我需要调度一个动作,但我不确定在哪里设置 state ,如果在商店或组件上。

另外,我应该在哪里加载我的用户信息? (想到构造函数)...还是应该在 WillMount/WillReceiveProps 中?

谢谢。

【问题讨论】:

  • 'using redux-router like this:' 之后是否应该有内容?
  • @SMcCrohan 确实不知何故没有渲染,我累坏了,没有注意到。编辑适当的内容。

标签: reactjs redux flux react-router-redux


【解决方案1】:

如果你真的很难理解 React/Redux 的原理,我建议你试试这个教程:

https://github.com/happypoulp/redux-tutorial

当我第一次开始使用 React/Redux 时,它帮助了我很多。顺便说一句,要真正回答您的问题有点困难,因为您要针对一个非常具体的案例提出具体问题:)

【讨论】:

  • 我会看看它,我的问题是我将在哪里加载在路由上的参数中传递的信息以呈现页面。
猜你喜欢
  • 1970-01-01
  • 2016-04-21
  • 1970-01-01
  • 2020-01-10
  • 1970-01-01
  • 1970-01-01
  • 2020-09-15
  • 2017-09-22
  • 2021-09-27
相关资源
最近更新 更多