Je suis en train de suivre ce code en redux-saga
export const getUser = (state, login) => state.entities.users[login]
export const getRepo = (state, fullName) => state.entities.repos[fullName]
Qui est ensuite utilisé dans la saga comme ceci:
import { getUser } from '../reducers/selectors'
// load user unless it is cached
function* loadUser(login, requiredFields) {
const user = yield select(getUser, login)
if (!user || requiredFields.some(key => !user.hasOwnProperty(key))) {
yield call(fetchUser, login)
}
}
Cette getUser
réducteur (c'est même un reducer) est très différente de ce que j'aurais normalement s'attendre à un réducteur de ressembler.
Quelqu'un peut-il expliquer ce qu'est un sélecteur est et comment getUser
est un réducteur et comment il s'intègre avec redux-saga?