1
私はとreselectを使用していますが、各変更時に非正規化されないようにしていますが、これが本当に改善しているかどうかはわかりません。denormalizrとreselectを組み合わせるのは良いアプローチですか?
import { createSelector } from 'reselect'
import { denormalize } from 'denormalizr'
import { challenge as schema } from './challenge.schema'
const getState = (state) => state
export const getChallenge = createSelector(getState, ({ entities, challenge }) => {
return denormalize(entities.challenges[challenge.item], entities, schema)
})
export const getChallenges = createSelector(getState, ({ entities, challenge }) => {
return challenge.items.map((id) => denormalize(entities.challenges[id], entities, schema))
})