我无法理解一些ReactJS和Redux原则,
在Redux中,我们有一个商店和一组redures,它们可以提供最终状态(我得到的这部分)。
组件从其父组件接收道具,在Redux的情况下,它使用提供者组件向下传递完整状态。
现在,让我们假设这个用例,我的app状态是这样的:
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,如果存在,它将覆盖我的默认用户。
问题: 这种方法是否正确?路线处理?
如果我在路由上传递用户标识参数,如何继续加载用户信息以及在哪里?我看到它的方式,我需要调度一个动作,但我不知道在商店或组件上设置状态的位置。
另外,我在哪里加载用户信息? (构造函数浮现在脑海中)......还是应该在WillMount / WillReceiveProps中?
谢谢。
答案 0 :(得分:0)
如果你真的很难理解React / Redux原则,我建议你试试这个教程:
https://github.com/happypoulp/redux-tutorial
当我第一次使用React / Redux时,它帮了我很多忙。顺便说一下,有点难以真正回答你的问题,因为你在一个非常具体的案例中提出具体问题:)