Mic*_*ley 31 reactjs reactjs-flux
在关于Flux架构的Facebook讨论中,Jing 在12:17提到调度员强制执行在商店完全处理当前操作之前不能调度任何操作.
这里的调度员是强制执行没有级联效应的主要部分; 一旦一个动作进入商店,你就不能再放一个,直到商店完全处理完毕.
那么,我的问题是你如何正确处理可能从商店启动的长期运行的异步操作(例如Ajax请求,或处理其他一些异外API) - 阻止完成动作调度的任何事情(例如,等待使用Ajax请求的结果来解析promise)可能会阻止用户调度UI生成的操作.
Sop*_*ert 30
根据我的理解,依赖于Ajax等的异步操作不应阻止将操作分派给所有订户.
您将对用户操作执行单独的操作,例如TODO_UPDATE_TEXT在TodoMVC示例中以及在服务器返回时调用的操作,类似TODO_UPDATE_TEXT_COMPLETED(或者可能只是更通用的内容TODO_UPDATE_COMPLETED,包含最新属性的新副本).
如果您希望进行乐观更新以立即向用户显示其更改的效果,您可以立即更新存储以响应用户操作(然后在服务器返回权威数据时再次更新).如果要在服务器上等待,则可以让商店仅更新自身以响应服务器触发的操作.
| 归档时间: |
|
| 查看次数: |
7052 次 |
| 最近记录: |