私は数ヶ月前に同じ問題を抱えていて、それを解決しました。Angular.jsとbootstrapを使ったツリービューテーブルです。コードとフローを参照して、その仕組みを理解してください。説明と実際の例を含むドキュメントがあります。
使い方?
このテーブルを実装するために単純な概念を使用しました。複雑なツリー データ構造を単純な 1 次元配列に変更し、Angular の ng-repeat を使用してこの配列を繰り返します。この配列の各ノードには、親 ID とレベル情報が含まれています。これは、各ノードを適切な場所に表示し、適切にインデントするために使用されます。例えば。
var treeDS = [ { name : aptitude, id : 123, childNodes : [ { name : time and work, id : 125 }, { name : problem on trains, id : 127 } ] } ]
このツリー データ構造を次の 1 次元配列に変換します。
var oneDArray = [ { name : aptitude, id : 123, level : 0, indentClass : "indent-0", parentId : -1 }, { name : aptitude, id : 123, level : 0, indentClass : "indent-1" parentId : 123 }, { name : aptitude, id : 123, level : 0, indentClass : "indent-1", parentId : 123 } ]
この oneDArray には、適切な親子関係とインデントを持つテーブル内のツリー データ構造を表示するためのすべての情報が含まれています。
level : ノードの深さを表示します indentClass : ノードの深さに従って行をインデントします parentId : どのノードをどのノードの下に表示する必要があるかを示すのに役立ちます。