Angular-ui-tree在拖放时保持节点的水平

时间:2018-01-05 17:42:27

标签: angularjs angular-ui-tree

如何防止子节点成为顶级节点,并防止父节点被删除到另一个父节点下。我想允许重新安排子节点和父节点,但只允许它们以当前级别下降。

1 个答案:

答案 0 :(得分:0)

这可以通过向与项目级别对应的ui-tree-node元素添加data-type属性来完成。然后通过检查树选项中的节点级别接受回调。

在视图中......

<li ng-repeat="i in items" ui-tree-node data-type="top-level">
</li>

在代码中......

        $scope.treeOptions = {
            accept: function(sourceNodeScope, destNodesScope, destIndex) {

                var source = sourceNodeScope.$element.attr('data-type');
                var dest = destNodesScope.$element.attr('data-type');

                if (source == 'child' && dest == 'top-level'){
                    //allow child nodes to be placed under top-level nodes
                    return true;
                }else{
                    return false;
                }
            }
        };