主要是省市区数据的处理 使用for 和 map
数据处理前
两种方式处理
const options = [];
for (let i = 0; i < regionData?.length; i++) {
options.push({
value: regionData[i]?.id,
label: regionData[i]?.name,
children: [],
})
for (let c = 0; c < regionData[i]?.city?.length; c++) {
options[i].children.push({
value: regionData[i]?.city[c].id,
label: regionData[i]?.city[c].name,
children: [],
})
for (let a = 0; a < regionData[i]?.city[c]?.area.length; a++) {
options[i].children[c]?.children?.push({
value: regionData[i]?.city[c]?.area[a].id,
label: regionData[i]?.city[c]?.area[a].name
})
}
}
}
const options = regionData?.map(province => ({
value: province.id,
label: province.name,
children: province.city.map(city => ({
value: city.id,
label: city.name,
children: city.area.map(area => ({
value: area.id,
label: area.name
}))
}))
}))
处理后
看代码和截图没理解你要问的问题,有报错?还是没达到自己想要的效果?想要什么效果?目前是什么效果?没看出来有什么区别。
如果还没解决可以私信我,具体看代码解决。
具体有什么疑问呢