Как использовать реселект с вложенными вызовами селектора - PullRequest
0 голосов
/ 30 сентября 2019

У меня есть большой селектор, который зацикливается на массиве и вызывает селектор для каждого элемента в массиве. Есть ли простой способ справиться с этим?

Это выглядит примерно так:

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

Кто-нибудь знает, как я могу это сделать?

Я думал только о том, что мне нужно скопировать и вставить селектор getSymptomInfo в сам цикл.

1 Ответ

0 голосов
/ 02 октября 2019

Я нашел ответ здесь Ответ здесь

Все, что нужно, - это создать запомненный селектор, который возвращает функцию, которая принимает аргументы, которые вы передадите, помимо состояния. Затем вы добавляете эту фабричную функцию селектора в качестве аргумента в исходный запомненный селектор.

...