我是Redux的新手,我正在做很多阅读。
我不完全理解使用容器和不使用容器之间的区别。如果我有一个包含DataSelect组件的Attribute组件,我可以:
没有DataSelect的容器:
// import ...
import DataSelect from './components/DataSelect';
// render ...
<DataSelect dataset={ this.props.dataset } />
使用DataSelect的容器:
// import ...
import DataSelect from './containers/DataSelect';
// render ...
<DataSelect />
让我感到困惑的是,第二种方法意味着组件层次结构并不意味着很多,所有包含的组件直接处理商店。谁能帮我理解差异呢?
更新
性能方面,如果我准备的这个图表是正确的*,似乎使用容器可以减少DOM比较,是不是?在左侧,数据集中的状态更改将触发检查以查看是否应呈现整个属性组件(+子项)。在右侧,数据集的更改只会检查DataSelect组件是否应该呈现。这样对吗?如果是这样,使用容器是否有显着的性能优势?