1

例如:

启动我的应用程序时,我创建了一个连接组件,其中包含一些用于调度操作的回调,并呈现单个展示组件,该组件又包含许多其他构成“屏幕”(或“场景”)的展示组件。

但后来我意识到其中许多组件都进行了不必要的渲染,因为它们中的每一个都需要状态的不同部分。

那么,解决方案是什么?也许将一个呈现许多容器的单个表示传递给路由处理程序,并且每个容器都连接到它关心的状态?那么,如果两个组件使用相同的状态部分,那么它们是否应该是不同的容器呢?而且,如果我采用这种方法,是否有一个文件夹“视图”来存储这些路由处理程序?

你是怎么处理的?

谢谢!

4

1 回答 1

4

shouldComponentUpdate()上这些组件,就不会成为什么大问题了。有关详细信息,请参阅高级性能深入研究 React Perf 调试。这正是connect()使用 React Redux 生成的组件。

也就是说,请随意使用connect()下面的组件。绝对没有义务connect()路由处理程序并将组件留在演示文稿下方。我建议从演示组件开始,并在connect()它们变得难以使用并且需要向下传递太多道具时将其中的一些包装起来。

于 2016-03-01T17:24:39.123 回答