Cod*_*Cat 39
如果状态不需要与其他组件共享,或者在卸载组件时不需要保持状态,那么您可以将其置于组件的状态.
你可以认为Redux商店是前端的数据库,如果你有从API获取的产品数据,那么Redux商店就是正确的地方; 如果你有一个下拉组件,它需要一个isOpen道具,那么该下拉列表的父级可以保持dropdownIsOpen为组件状态.
有关更多信息,请参阅Dan的答案:https://github.com/reactjs/redux/issues/1287
你也说过
只有1个容器组件,其余部分为无状态组件
这是不正确的.您可以拥有多个容器组件.容器组件还可以包含另一个容器组件.
摘自书本:
首先,我们应该始终牢记,只应将所需的最少量数据放入状态。例如,如果我们必须在单击按钮时更改标签,我们不应该存储标签的文本,而应该只保存一个布尔标志来告诉我们按钮是否被单击。其次,我们应该只向状态添加我们想要在事件发生时更新的值,以及我们想要使组件重新渲染的值。确定状态是否是存储信息的正确位置的另一种方法是检查组件本身或其子组件是否需要我们保留的数据。如果多个组件需要跟踪相同的信息,我们应该考虑在应用程序级别使用像 Redux 这样的状态管理器。
| 归档时间: |
|
| 查看次数: |
9435 次 |
| 最近记录: |