表示组件和容器组件之间的区别?

时间:2018-02-21 07:58:10

标签: reactjs react-redux components containers

我们何时应该使用表示组件,何时应该使用容器组件?

2 个答案:

答案 0 :(得分:2)

  • 表示组件(或哑组件)通常用于创建一些他们不关心数据如何加载或变异的UI,他们内部没有任何逻辑(如果他们它是通过道具),通常它们被创建为功能组件,除非它们需要一些状态或生命周期方法。

  • 容器组件(或智能组件)它们负责将数据传送到组件(表示或其他容器),而不是向下和向下传递道具。如果您使用react-redux,那么使用connect包装并传递mapStateToProps函数的每个组件都被视为容器。

查看Dan Abramov的这篇文章,他更详细地解释了这个主题 https://medium.com/@dan_abramov/smart-and-dumb-components-7ca2f9a7c7d0

答案 1 :(得分:1)

  • 演示 - 没有状态,对其余部分没有依赖性 应用程序,处理事物的外观
  • 容器 - 通常具有状态,调用redux操作,处理工作方式

此处完全比较:Presentational and Container Components