我有一个文件资源管理器树的树模型的自定义实现。这个树也应该支持drag n drop,所以我编写了我的树的pasteItem方法,如下所示:
pasteItem: function(childItem, oldParentItem, newParentItem, bCopy){
var oldParentItemFiles = new Array();
for(var idx in oldParentItem.files) {
if(oldParentItem.files[idx].name != childItem.name) {
oldParentItemFiles.push(oldParentItem.files[idx]);
}
}
newParentItem.files.push(childItem);
childItem.parent = newParentItem;
}
我调试了这个函数,据我所知,变量被正确修改了。但是,正确调用该函数并在没有错误的情况下运行,同时显示了拖放对话框,但树没有更改。
有什么类似于我必须调用的render()方法吗?
答案 0 :(得分:0)
我找到了答案:
树连接到模型的onChildrenChange,onChange和onDelete事件。因此,只需使用适当的值在模型树上调用这些方法,它就可以工作。如果您自己实施模型,请务必更改模型数据;)