Я пытаюсь заставить реселект запоминать мой селектор, вызванный с динамическим аргументом
Мой селектор:
import { createSelector, defaultMemoize } from 'reselect'
const allStatesSelector = store => store.state.states
export const getAllStates = createSelector(
allStatesSelector,
states => defaultMemoize(night => {
console.log('getAllStates called with night:', night)
const availableStates = night ? nightStates : dayStates
return states.filter(state => availableStates.includes(state.id))
}),
)
Я так называю:
states: getAllStates(store)(props.night)
Селектор вызывается 1800 раз вместо 2 (учитывая, что ночь может быть только истинной или ложной).
Что я пропустил?