是Flux'调度程序过度工程,因为Javascript是单线程的?

时间:2017-11-15 03:35:34

标签: javascript reactjs flux

我正在研究Flux的Dispatcher.js是如何实现的,这引发了一些问题,因为我理解javascript是单线程的:

isDispatching()false之外还会返回任何内容吗? _isDispatching标志在dispatch()的开头设置,然后在方法结束之前重新设置为false。如果只有一个线程执行Dispatcher,还有什么可以调用isDispatching()

同样,每次回调都不是_isPending_isHandled布尔都是多余的?

1 个答案:

答案 0 :(得分:0)

它们作为检查来阻止回调立即再次发送(导致无限循环)。

尝试描述如果其中一个侦听器在前一个调度仍然循环this._callbacks时调用了调度会发生什么