在Redux中处理数据传递的正确方法是什么

时间:2020-10-27 19:46:57

标签: reactjs redux react-redux components

我对Redux中的概念并不陌生,并且很简单:我想知道如何最好地将数据从父组件传递到子组件。

我看到一些方法。

  1. 让父母成为容器并管理孩子的业务逻辑,并通过道具传递适当的数据。
  2. 让孩子成为容器并连接到商店,以便数据直接进入孩子。
  3. 使用上下文。

这是我尝试过的方法的优缺点。

方法1:

  • 父组件的所有逻辑都变得肿,从而弄乱了多个子组件,从而造成混乱的逻辑和变量命名。
  • 它与商店脱钩

方法2:

  • 所有逻辑都很好地包含在连接的组件中
  • 它与商店紧密耦合
  • 没有简单的方法来查看mapDispatchToProps中已更改的道具,而又不使用笨拙的东西。

我还没有真正尝试过上下文。我想知道Redux的方式是做什么的。就我个人而言,我更喜欢#2,但最后一个骗局对我来说是一个杀手。如果#3更好,请告诉我。谢谢您的帮助。

1 个答案:

答案 0 :(得分:1)

使用redux-toolkit

使用createSlice中的@reduxjs/toolkit创建商店,状态切片及其缩减器,并且每个组件都可以使用useSelector中的react-redux访问商店中的必要数据。

不再需要mapDispatchToProps