我已经开始通过flummox、react-bootstrap和react-router玩react。我正在尝试为我的网站创建一个基本的同构 CMS。
语境 :
在身份验证方面,每个用户都有一个功能列表,每个组件都使用我的身份验证存储“可以”的方法来显示或不显示,等等......
我在顶部有一个用户导航栏,在 reat-router 处理的每个页面上都可见,带有一个登录/注销按钮,如果用户未登录,则基本上在单击带有登录表单的模态时显示,否则注销确认。
当用户登录时,我希望更新当前显示的页面上的组件(与注销相同)。
这是一个页面示例,该页面显示一个列表,该列表只能由具有适当权限的经过身份验证的用户查看:
过程 :
- 当用户提交表单时,我调用了一个动作
- 该操作向服务器发送请求
- 该操作由更新其 currentUser 的身份验证存储注册
- 该组件有一个 currentUser 道具,并使用 componentWillReceiveProps 来检查这个道具是否改变并调用一个动作来请求列表
- 该操作由更新其商品的商店注册
问题:无法在调度过程中调度
Hack:第二个动作放在 setTimeout 中
问题: 我阅读了很多关于这个特定问题的答案,据说在同一个调度程序周期内调用两个动作是糟糕的设计。所以我的问题是:有没有更好的方法来设计这个过程?
PS:如有必要,我可以发布一些代码。