data树数据,注意要新建个对象。JSON.parse(JSON.stringify(data))
checkTrue。树中打勾的数组.保存唯一值。tree.getCheckedNodes()
noCheckTrue。树种没有打勾的数组.保存唯一值。即tree.getHalfCheckedNodes()
getSelectTreeData(data, checkTrue, noCheckTrue) {
for (var i = data.length - 1; 0 <= i; i--) {
if (checkTrue.indexOf(data[i].nodeId) > -1) {
data[i].all = true;
} else if (noCheckTrue.indexOf(data[i].nodeId) > -1) {
data[i].all = false;
this.getSelectTreeData(data[i].children, checkTrue, noCheckTrue);
} else {
// 删除不存在的数据
data.splice(i, 1);
}
}
return data;
}
本人菜鸟,暂时只想到这一种拙的方法。如有更好的方法,欢迎指导。