1

当项目从树#1 拖放到树#2 时,我想检测事件。在这种情况下,我想调用一个特定的 http 操作来保存它。我在一棵树内使用带有动作的放置事件,但是当我在树之间移动项目时我无法管理它。我试图找到事件“dest”和“source”对象的差异,但没有找到任何解决方案。

4

1 回答 1

1

我解决了我的问题。我向树添加了自定义数据树类型属性

 <div ui-tree="treeOptions" id="tree-root" data-tree-type="mainTree" data-drag-delay="200">
        <ol ui-tree-nodes ng-model="data">
            <li ng-repeat="node in data" data-info="{{node.pageId}}" ui-tree-node ng-include="'nodes_renderer.html'"></li>
        </ol>
</div>

然后在指令中的 angular-ui-tree.js 中uiTree我添加了监视功能

scope.$watch(attrs.treeType, function (val) {
     scope.treeType = attrs.treeType;
});

现在我可以比较删除事件目标和源对象中的 treeType 属性。

于 2015-08-11T07:46:17.117 回答