平面配列からツリー配列を構築する
2941 ワード
再帰的な方法でコメントを表示する代入を得ました.
サーバから取得したデータは平らで、意味がありました.
配列の各項目は親のように参照を保持します.
再帰的なオブジェクトが欲しいならば、最も簡単な解決は再帰的な解決です
以下はフラット配列をツリー配列に変換する関数です.
最初にフィルタリングする それから、我々はちょうど我々がつかまえた子供たちの各々に、同じことをします
ここでは、解決策のデータotでもっとプレイしたい場合はcodepenです.
私を助けてくれた情報源 Styling Comment Threads
サーバから取得したデータは平らで、意味がありました.
配列の各項目は親のように参照を保持します.
const entries = [
{
index: 1,
parent: 0
},
{
index: 2,
parent: 1
},
{
index: 3,
parent: 2
},
...
...
];
この問題を攻撃する方法を考えた後、私は実現した再帰的なオブジェクトが欲しいならば、最も簡単な解決は再帰的な解決です
以下はフラット配列をツリー配列に変換する関数です.
const arrayToTree = (arr, parent = 0) =>
arr.filter(item => item.parent === parent)
.map(child => ({ ...child, children: arrayToTree(arr,
child.index) }));
クイックランダウンroot parent
'sの子供たち.スタックオーバーフロー問題に対する私の答え
ここでは、解決策のデータotでもっとプレイしたい場合はcodepenです.
私を助けてくれた情報源
Reference
この問題について(平面配列からツリー配列を構築する), 我々は、より多くの情報をここで見つけました https://dev.to/danielbellmas/build-a-tree-array-from-a-flat-array-recursion-32jnテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol