hello, 隔了一个多月。。。今天终于沉下心好好看你提出的问题;
今天刚刚修复了一个bug:
* 【修改】onDrop 的触发规则,保证异步加载模式下,可以在延迟加载结束后触发,避免 onDrop 中被拖拽的节点是已经更新后的数据。
然后看了一下代码,我觉得你应该也是试用了异步加载模式, 当你move 的targetNode 是父节点,并且还没有展开获取子节点时,就肯定会出现问题。 因为当你 执行了moveNode 之后,异步加载还没有完毕,所以这时候对于节点数据的各种修复操作并没有进行,只有当异步加载结束了才行;
所以请在 moveNode 之后, 判断 targetNode 的 zAsync 属性等于true 时,再执行你必要的操作。 再下一步重构之后,我会针对 moveNode 等方法提供适当的 callback 方法,来保证工作流的正常执行