Я просматривал статью Дэна Паркера на Medium о повторном выборе нпм модуль.
В разделе предварительного этапа своего кода он привел этот пример (с комментариями)
import { createSelector } from 'reselect'
// I am a generic selector, I need no special treatment
// I am now passing props so I can find a specific bar
const getBar = (state, props) => {
const id = props.id
const barById = state.foo.bar.find((item,i) => item.id === id)
return barById
}
// This no longer will work if it is needed in multiple places
//export const getBarState = createSelector(
// [ getBar ],
// (bar) => bar
//)
// This is proper if it is needed in multiple instances
export const makeGetBarState = () => createSelector(
[ getBar ],
(bar) => bar
)
Я не могу понять приведенный выше код, как здесь
import { createSelector } from 'reselect'
Мы импортируем createSelector из reselect.
const getBar = (state, props) => {
const id = props.id
const barById = state.foo.bar.find((item,i) => item.id === id)
return barById
}
здесь я не могу понять, откуда/как мы получаем props
.
и почему это не сработает
export const getBarState = createSelector(
[ getBar ],
(bar) => bar
)
но это было бы
export const makeGetBarState = () => createSelector(
[ getBar ],
(bar) => bar
)