エンティティが同じタイプの子を持つことができるレデューサーを実装する方法について、私は少し考えています。
例として reddit コメントを見てみましょう: 各コメントには、コメント自体などを持つことができる子コメントを含めることができます。簡単にするために、コメントはタイプ のレコードであり{id, pageId, value, children}
、pageId
reddit ページです。
その周りのレデューサーをどのようにモデル化しますか? レデューサーをマップにすることを考えていました->を使用してページごとにフィルターできるコメントのID pageId
。
問題は、たとえば、ネストされたコメントにコメントを追加する場合です。マップのルートにレコードを作成し、その id を親子プロパティに追加する必要があります。すべてのコメントを取得するために必要なすべてのコメントを表示するには、一番上にあるもの (たとえば、orderedList としてページ レデューサーに保持されるもの) をフィルター処理してから、コメント オブジェクトから取得するときにそれらを反復処理します。再帰を使用して子に遭遇します。
それよりも良いアプローチはありますか、それとも欠陥がありますか?