ReactJS:如何优化自上而下的渲染流程

ReactJS: How to optimise top-down render flow

查看 Facebook 的 Flux TodoMVC 示例 (https://github.com/facebook/flux/tree/master/examples/flux-todomvc/) 让我想知道这种方法如何扩展。

在这个例子中,商店被更新 onBlur/Enter 一个新条目的按键,但是如果我们想更新一个现有的按键按键怎么办?也就是说,您在输入中输入了一些内容,这会保存到商店中。

商店的内容(待办事项列表)被设置为最高级别的状态,因为整个应用程序都需要它,每当商店发生变化时都会重新设置。

这个规模如何?检查每个组件是否需要重新渲染似乎效率低下,而很可能什么都不做(您只是在编辑文本,而该项目是唯一需要更新的东西)。

这种方法是否适合用于真正的应用程序,或者是否需要牢记优化以有效地实现这种规模?

每个组件都有 shouldComponentUpdate 方法,该方法将 运行 确定组件在接收到新道具时是否真的应该更新。默认情况下,这只是 returns true。

如果您在组件上很好地实施了该方法,那么您布局的架构将非常高效,并且会随着应用程序的增长而很好地扩展。

另请参阅:PureRenderMixin https://facebook.github.io/react/docs/pure-render-mixin.html