以下场景:我有一个剑道ui树,我动态添加和删除它的子项。
添加项目工作正常,但当我删除一个孩子时,树不会刷新。
我已经检查过孩子长度减少了。
请你查看这个plunkr:http://plnkr.co/edit/XYc5Zz?p=preview
我试过这个,但它不起作用。
removeItem()
{
let nodeRef = this.getNodeRef(false);
alert(nodeRef.items.length);
nodeRef.items = nodeRef.items.filter(item=> item !== this.selectedItem);
alert(nodeRef.items.length);
this.changeDetectionRef.detectChanges();
}
我希望你能帮助我。当然,您可以告诉我动态修改剑道树的其他方法。
祝你好运
答案 0 :(得分:0)
我认为问题在于您要用新阵列替换原始阵列,而 kendo-treeview 仍指的是前一个阵列。 尝试执行以下操作从数组中删除一个元素:
const found = nodeRef.items.find(item => item === this.selectedItem);
nodeRef.items.splice(nodeRef.items.indexOf(found), 1);
我希望它会有所帮助,并且为时不晚。