私はすべてのオブジェクトを正常化するが、私はnormalizr使用しません。
私はコードを読みやすくするために正規化したいと思います。以下の例。また、オブジェクトを参照して重複を排除するのがずっと簡単になります。たとえば、elsesリストのtodoアイテムを購読している場合、そのtodoの複製バージョンを購読者のsubscribedTodos
リストに戻すか、取得するためには、他のtodoのユーザーIDとToDoを知る必要がありますそれに。戻る可読性へ
:これらの理解/読み良いですか?
function rootReducer (state, action) {
const { type, payload } = action;
if(action.type === MODIFY_TODO) {
return {
...state,
users: {
...state.users,
[payload.userID]: {
...state.users[userID],
todos: {
...state.users[userID].todos,
[payload.todo.todoID]: {
...state[userID].todos[todoID],
...todo
}
}
}
}
}
} else { return state; }
}
function rootReducer (state, action) {
const { type, payload } = action;
if(type === MODIFY_TODO) {
return {
...state,
todos: {
state.todos[payload.todo.id]: {
...state.todos[payload.todo.id],
...payload.todo
}
}
}
} else { return state; }
}
あなたはドキュメントを読みましたか? http://redux.js.org/docs/basics/Reducers.html –