Redux演示组件仅适用于顶级组件?

时间:2016-06-10 09:14:54

标签: reactjs redux react-redux

我想知道演示组件是否应仅用于顶级组件?

例如:我的组件Layout包含更深层次的组件,例如SidebarContent,前进Content组件包含组件HeaderConversation

每个组件(不包括布局和内容)应该作为演示组件连接到?

+----------------------+
|         LAYOUT       |
|+---+-----------------+
|| S |     CONTENT     |
|| I |+---------------+|
|| D ||    HEADER     ||
|| E |+---------------+|
|| B ||               ||
|| A || CONVERSATION  ||
|| R ||               ||
|+---++---------------+|
+----------------------+

1 个答案:

答案 0 :(得分:2)

对于什么类型的组件需要呈现/容器没有明确的定义,我更喜欢聪明/愚蠢。

这一切都取决于你如何处理它们中的数据绑定和动作处理

Dan Abramov的Presentational and Container Components

  

何时介绍容器?
  我建议您首先使用演示组件开始构建应用程序。最终你会意识到你在中间组件上传递了太多道具。当你注意到某些组件没有使用他们收到的道具而只是将它们向下转发时,你必须在孩子需要更多数据时重新连接所有这些中间组件,这是引入一些容器组件的好时机。这样,您就可以将数据和行为道具获取到叶子组件,而不会在树的中间加载不相关的组件。