2
私のレデューサーは、操作対象のスライスとは独立して、状態のルートオブジェクトにデータを取り込みたいと思います。reduxで正規化されたデータを格納する
私はnormalizrがいかに素晴らしい説明に多くのページを発見したが、どこで、どのようにこの正規化されたデータを保存するために、誰も説明されていません。
質問は以下のとおりです。
私は珍しいと間違って何かをしようとしていますか?
レデューサーは、データのみのスライスに動作するので、どのように私は、ルート状態オブジェクトの状態を変更することができます。
ので、動画低減:(ビデオが他のエンティティが含まれている場合や他のキーも同様)
const videos = (state, action) => {
switch (action.type) {
case 'LOAD_VIDEOS': {
return ....
}
}
}
は、正規化されたデータでもstate.database.videos
だけでなく、state.videos
(動画IDの配列を有する)を投入すべきです。
ニースの答えを。実際、私は特別な要件はありません。単純なアプリケーションなので、なぜこのアプローチがブログ、ドキュメント、チュートリアルに広告されていないのか不思議でした。 – agori
ありがとうございます。実際、[公式文書](http://redux.js.org/docs/basics/Reducers.html)は、結合されたレデューサーに移動する前にプレーン関数で始まり、combineReducers()は単なるヘルパーにすぎないことを説明しています: "すべてのcombineReducers ()は、キーに従って選択された状態のスライスであなたのレデューサーを呼び出し、それらの結果を再び単一のオブジェクトに結合する関数を生成します。これは魔法ではありません。 –