【问题标题】:Use createSelector (or any memoized selector) with hooks without mapStateToProps使用带有没有 mapStateToProps 的钩子的 createSelector(或任何记忆选择器)
【发布时间】:2019-12-24 07:35:05
【问题描述】:

我想创建一个 memoized 选择器,它会在 redux 存储中的状态发生变化时自动更新。

我在这里读到了 Reselect 的 createSelector

https://redux.js.org/recipes/computing-derived-data

我看到 mapStateToProps 被用来将选择器连接到商店。我目前只使用带有钩子的 redux(useDispatchuseSelector),而不使用 connect(mapStateToProps, mapDispatchToProps)

有没有办法使用createSelector 但仍然不使用connect?如果没有,是否有另一种方法来创建记忆选择器?

【问题讨论】:

    标签: reactjs react-redux reselect


    【解决方案1】:

    是的,它们几乎等效。 useSelector 采用纯函数,在调用时传递整个 redux 存储(即状态)。然而,与 Reselect 的选择器不同的是,它们无法接收传递的道具(除了通过闭包或柯里化)。除了少数极端情况外,大多数标准的 Reselect 状态选择器都可以与 react-redux 的 useSelector 挂钩使用。

    重新选择选择器是记忆选择器,因此here 是使用它们的部分。

    useSelector redux docs

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-03
      • 1970-01-01
      • 1970-01-01
      • 2019-12-19
      • 1970-01-01
      • 2015-06-22
      相关资源
      最近更新 更多