Угловое UI-дерево обнаруживает событие перетаскивания между связанными деревьями
Я хотел бы обнаружить событие, когда элемент был перетащен из дерева #1 и сброшен в дерево #2. В этом случае я хотел бы вызвать конкретное действие http, чтобы сохранить его. Я использую событие сброса с действиями внутри одного дерева, но не могу управлять им, когда перемещаю элемент между деревьями. Я пытался найти различия в объектах событий "dest" и "source", но не нашел никакого решения.
1 ответ
Решение
Я решил свою проблему. Я добавил собственный атрибут data-tree-type в дерево
<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 в объектах dest и drop.