1、 查询这条子级数据
find = (v, list) => {
let data;
(list || []).map(i => {
if (i.value === v) {
data = [i];
} else {
const child = this.find(v, i.children);
if (child) {
data = child;
}
}
});
return data;
};
2、 查询这条子级数据的父级数据
find = (v, list) => {
let data;
(list || []).map(i => {
if (i.value === v) {
data = [i.value];
} else {
const child = this.find(v, i.children);
if (child) {
data = [i.value, ...child];
}
}
});
return data;
};
3、根据最低级id查询父级这条链
const getArea = (v, list) => {
if (!v) {
return "";
}
let data;
const f = list.filter(i => i.value === v);
if (f.length) {
const child = getArea(f[0].valueUp, list);
if (child) {
data = [...child, v];
} else {
data = [v];
}
}
return data;
};
3、处理涉及县数据
const formatInCounty = (list) => {
return list.map((item) => {
const child = formatInCounty(item.children || []);
return {
...item,
title: item.label,
children: child,
disabled: child.length,
};
});
};