reactjs - 如何将 Reselect 与嵌套的选择器调用一起使用

标签 reactjs redux react-redux memoization reselect

我有一个大型选择器,它遍历数组并为数组中的每个项目调用一个选择器。有什么简单的方法可以解决这个问题吗?

看起来像这样:

const memoizedGetPatientSymptomSeries = createSelector(
    state => getCurrentPatientId(state),
    state => displayPrefSelectors.getSymptomsToView(state), 
    (pid, selectedSymptoms) => {
        selectedSymptoms.forEach( symptom => {
            const symptomInfo = getSymptomInfoSelector(state, symptom.id)
        }
    }
)

有人知道我该怎么做吗?

我唯一的想法是我必须将 getSymptomInfo 选择器复制并粘贴到循环本身中。

最佳答案

我找到了 answer here

它所要做的就是创建一个记忆化的选择器,该选择器返回一个函数,该函数接受您传递的除状态之外的参数。然后将该选择器工厂函数作为参数添加到原始记忆化选择器中。

关于reactjs - 如何将 Reselect 与嵌套的选择器调用一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58175055/

相关文章:

reactjs - 仅导入特定于每个路由上每个组件的样式

reactjs - React daterangepicker - 移动友好

javascript - 为什么本地浏览器不显示任何内容?

node.js - NodeJS 和 ReactJS 的 Heroku 部署

javascript - 为什么 redux 在存储中创建名称为 '0' 的状态?

reactjs - Redux Saga - 更新本地状态的回调

typescript - 使用 connect 时 redux-thunk 类型错误

javascript - 内联样式和 ReactCSSTransitionGroup

javascript - 将 redux 与 React hook 一起使用

javascript - 从从不同的缩减程序文件订阅的操作文件中分派(dispatch)操作是否是反模式?