Angular-ui-tree 在拖放时将节点保持在它们的水平
Angular-ui-tree keep nodes to their level on drag and drop
如何防止子节点成为顶级节点,同时防止父节点被放到另一个父节点下。我想允许重新排列子节点和父节点,但只允许它们在当前级别下降。
这可以通过将数据类型属性添加到对应于项目级别的 ui-tree-node 元素来完成。然后通过检查树选项中节点的级别接受回调。
在视图中...
<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;
}
}
};
如何防止子节点成为顶级节点,同时防止父节点被放到另一个父节点下。我想允许重新排列子节点和父节点,但只允许它们在当前级别下降。
这可以通过将数据类型属性添加到对应于项目级别的 ui-tree-node 元素来完成。然后通过检查树选项中节点的级别接受回调。
在视图中...
<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;
}
}
};