如下图,数据表里为省份的都是parent_id为0的,市的parent_id是省,区的parent_id是市。
我想把数据循环下来,组成数组。
比如:
data: [{value: 1, label: '北京', children: [
{
value: 1, label: '北京市', children: [
{ value: 1, label: '东城区' },
{ value: 2, label: '西城区' },
{ value: 3, label: '崇文区' },
{ value: 4, label: '宣武区' },
{ value: 5, label: '朝阳区' },
{ value: 6, label: '丰台区' },
{ value: 7, label: '石景山区' },
{ value: 8, label: '海淀区' },
{ value: 9, label: '门头沟区' },
{ value: 10, label: '房山区' },
{ value: 11, label: '通州区' },
{ value: 12, label: '顺义区' },
{ value: 13, label: '昌平区' },
{ value: 14, label: '大兴区' },
{ value: 15, label: '怀柔区' },
{ value: 16, label: '平谷区' },
{ value: 17, label: '密云县' },
{ value: 18, label: '延庆县' }
]
}
]}]
感谢各位大佬的评论回答,最终用了以下方法解决,后端用的是TP6,前端用的是vue+element
,返回的数据主要是为了用在前端element组件Cascader 级联选择器里面。
数据库获取下来的数组 value是唯一id,parent_id是父级id,level是级别(0是省,1是市,2是区)

最终的数据
