2017-04-30 12 views
0

ツリービューではほとんどすべてを実装できましたが、親ノードが選択されるたびに葉ノードのみを取得できませんでした親ノードがangle-ivh-treeviewで選択されたときに葉ノードのみを取得する

ケース1:ケース2

リーフノードの選択:の選択に、だからのみ以下のような選択肢の任意のタイプで選択されたノードの私の配列に追加されるリーフノードオブジェクトを必要とします

ケース3:最後の左の葉ノードの選択時 等...など。これら上記のコードで

<div ivh-treeview="demo.stuff" 
    ivh-treeview-expand-to-depth="-1" 
    ivh-treeview-on-cb-change="demo.updateSelection()"> 
</div> 

$scope.demo.updateSelection = function() { 
    $scope.selectedNodes.length = 0; 
     ivhTreeviewBfs($scope.demo.stuff, function(node) { 
      if(node.selected) { 
       $scope.selectedNodes.push(node); 
      } 
    }); 
} 

、階層全体が、すぐに親ノードを選択しますと、私の選択したノードの配列に追加取得されます。与えられたノードが葉であるかどう

答えて

0

ivhTreeviewBfsは直接あなたを教えてくれませんが、あなたは確認することができ、例えば:また

if(node.selected && !(node.children || []).length) { 
    /* it's a selected leaf! */ 
} 

、超マイナーなものがありますが場合は、ivhTreeviewOptionsProviderを使用することができます心に留めておきますselectedchildrenのようなプロパティをハードコードしたくないです。

関連する問題