在redux-react中,哪些状态属性是本地的,哪些状态属性需要连接来存储? [已关闭]

问题描述 投票:0回答:2

我是 redux-react 的新手。我想知道哪些属性需要在组件内部声明,哪些属性需要在减速器中声明。希望我是正确的,连接用于映射减速器中声明的属性,以便通过存储重定向状态更改。

reactjs redux
2个回答
1
投票

有时,在组件内使用本地状态而不使用 redux 是完全可以的。 当前的最佳实践是使用本地状态来处理用户界面 (UI) 状态而不是数据。 例如,使用受控组件填写表单是本地状态的完全有效使用。

如果您使用的值仅与当前组件相关,并且不被其他组件使用或被其他组件共享,并且不被其余导航/流程使用,那么可以在本地保存您的状态。


0
投票

好吧,如果您在应用程序中使用 redux,我建议将所有内容保存在 redux store 中。所有组件的整个状态都存储在 redux 中。 (这是我的意见)

您的组件现在大部分都是无状态组件。

但是有一些东西不需要保存在存储中(这又取决于你),例如,如果你有一个手风琴,并且手风琴的状态不需要保存在存储中。它可以保持在状态。

如果您的应用程序中有以下组件,

  • 待办事项列表 - 内部包含待办事项的组件
  • Todo 组件 - 包含删除按钮、编辑按钮、更多详细信息图标
  • 更多细节组件 - 再次包含编辑、删除按钮。

现在,如果您在 Moredetails 组件中并且没有使用任何 redux 存储,则单击编辑,您必须将状态提升到待办事项列表。 (这将是对您的更改的回调) 如果您使用的是 redux 存储,由于您在单个存储中拥有所有数据,因此您只需分派一个操作即可更新待办事项列表(克隆包含更新的列表)。

由于状态是在组件之间共享的,因此使用 redux 使生活变得简单。

但是如上所述,有些场景不需要将状态存储在 redux store 中。

您甚至可以查看此链接,其中包含非常好的信息。

© www.soinside.com 2019 - 2024. All rights reserved.