项目中有个需求:
省市区三级联动,但是后台给的数据有四级(存在市辖区),此时需要将市辖区下面的children删除。
后台给出的数据格式

思路:
1、将name为市辖区的id放进一个数组
2、循环遍历删除parentId为市辖区的项
代码如下:
(1)数据格式示例:
{
"id": 110000,
"name": "北京市",
"parentId": 0
},
{
"id": 120000,
"name": "天津市",
"parentId": 0
},
{
"id": 130000,
"name": "河北省",
"parentId": 0
},
{
"id": 140000,
"name": "石家庄市",
"parentId": 13000
},
{
"id": 140001,
"name": "正定县",
"parentId": 14000
},
{
"id": 140003,
"name": "市辖区",
"parentId": 140000
},
{
"id": 140009,
"name": "邯山区",
"parentId": 140003
}
(2)js代码
const { data } = res;
let parentIds = [];//市辖区id数组
if (data) {
data.forEach((item, index) => {
if (item.name == "市辖区") {
parentIds.push(item.id)
}
});
}
var middle = [];
var changeData = [];
for(var i in parentIds){
middle[parentIds[i]] = true;
}
for (var k in data){
if(!middle[data[k].parentId]){
changeData.push(data[k])
}
}
结果:
{
"id": 110000,
"name": "北京市",
"parentId": 0
},
{
"id": 120000,
"name": "天津市",
"parentId": 0
},
{
"id": 130000,
"name": "河北省",
"parentId": 0
},
{
"id": 140000,
"name": "石家庄市",
"parentId": 13000
},
{
"id": 140001,
"name": "正定县",
"parentId": 14000
},
{
"id": 140003,
"name": "市辖区",
"parentId": 140000
}
1626

被折叠的 条评论
为什么被折叠?



