我目前正在使用Angular UI Tree连接树。Tree1 只有一层深度,而 Tree2 的深度是无限的。我需要能够将 Tree2 中的任何项目拖入Tree1项目并捕获该事件。
澄清一下:实际上 Tree1 是 Tree2 的顶级项目,这使我可以轻松地在整个数据结构之间移动项目。
在当前文档下我找不到执行此操作的方法,因此我执行了以下操作: 在 Tree1 上,我禁用了 drop:
<div ui-tree="tree1Options" id="tree1-root" data-nodrop-enabled='true'>
然后在 Tree2 我添加了以下回调:
<div ui-tree="tree2Options" id="tree2-root">
$scope.tree2Options = {
dropped : function(event) {
console.log("dropped" + event);
},
dragStop : function(event) {
console.log("dragStop" + event);
},
beforeDrop : function(event) {
console.log("beforeDrop" + event);
},
}
当我从 Tree2 拖到 Tree1 上时,没有显示占位符(这很好),但我无法从目的地获得放置在哪个项目上。似乎 dest 实际上是源。
有任何想法吗?另外,您是否知道实现 DROP INTO 的更好方法?