2017-01-16 65 views
4

我刚开始使用Redux以及任何我担心的开发者性能Redux文档指出,无论何时触发动作,都会遍历所有减速器以通过switch语句找到适当的动作函数。Redux的减速器遍历如何有效?


现在,假设我们有很多操作的巨大应用。无论何时触发其中的一个,所有减速器都将被遍历。显然几乎所有的减速器都不需要这个动作,但是Redux将会遍历它们,即使它们与被触发的动作没有任何共同之处。这怎么能有效率?

+2

JavaScript引擎今天很快,一个简单的switch语句不会很慢。 –

+2

Redux体系结构可能不是最具计算效率的解决方案,但它并不需要。函数执行和切换语句非常非常快 - 您可以在不显着延迟的情况下执行数千次。 – jevakallio

+0

@ this.lau_感谢您的回答! –

回答

2

根据已经给出的评论:几个函数调用和switch语句不可能是一个有意义的性能问题,尤其是考虑到应用程序内部正在进行的其他工作。

Redux FAQ专门解决了这个问题:http://redux.js.org/docs/faq/Performance.html#performance-all-reducers。它还讨论Redux的整体性能和可伸缩性:http://redux.js.org/docs/faq/Performance.html#performance-scaling

除此之外,我只写了一篇博客文章,讨论将React和Redux一起使用时性能优化的几个重要方面:Practical Redux Part 6: Connected Lists, Forms, and Performance