把图中的数据循环 只要
{
"provinces": [
{
"name":"陕西省",
"code":"0000001",
"citys": [
{
"name": "西安市",
"code": "0000002",
"areas": [
{
"name": "长安区",
"code": "0000003"
},
{
"name": "未央区",
"code": "0000004"
}
]
},
{
"name": "渭南市",
"code": "0000005",
"areas": [
{
"name": "潼关县",
"code": "0000006"
},
{
"name": "蒲城县",
"code": "0000007"
}
]
}
]
},
{
"name":"山西省",
"code":"0000008",
"citys": [
{
"name": "太原市",
"code": "0000009",
"areas": [
{
"name": "小店区",
"code": "0000010"
},
{
"name": "晋源区",
"code": "0000011"
}
]
},
{
"name": "大同市",
"code": "0000012",
"areas": [
{
"name": "平城区",
"code": "0000013"
},
{
"name": "云冈区",
"code": "0000014"
}
]
}
]
}
]
}
逻辑:多余的删除
let checkData = []
treeData.forEach((item, index) => {
let provinceOne = item.value.slice(0, 2) //当前的
let provinceTwo = ''
if (index > 0) {
provinceTwo = treeData[index - 1].value.slice(0, 2)
}
//当前的和前一个对比字符串前2个一样
if (provinceOne !== provinceTwo) {
if (item.value.charAt(2) === '0' && item.value.charAt(3) === '0') {
checkData.push({
checked:item.checked,
title:item.title,
value:item.value,
children:item.children,
})
}
}
})
console.log('数据: ', checkData);
checkData.forEach(function(item){
item.children.forEach(city=> {
delete city.expand;
delete city.nodeKey;
city.children.forEach(area=> {
delete area.expand;
delete area.nodeKey;
delete area.children;
});
});
});
console.log('1222: ',checkData);
网友评论