前端要求三级联动组件返回格式如下
[
{
value: 'zhejiang',
label: 'Zhejiang',
children: [
{
value: 'hangzhou',
label: 'Hangzhou',
children: [
{
value: 'xihu',
label: 'West Lake',
},
],
},
],
},
{
value: 'jiangsu',
label: 'Jiangsu',
children: [
{
value: 'nanjing',
label: 'Nanjing',
children: [
{
value: 'zhonghuamen',
label: 'Zhong Hua Men',
},
],
},
],
},
];
每个业务的数据结构各不相同,但是总体的思路应该是不变的。
针对前端的需求,大体思路为:
第一步:先查出所有的数据,将所有数据按照层级放入到Map集合中,key作为后面拼接的标识,value为真正需要使用到的数据,如果是子节点,会将value设为Map继续拼接数据。
第二步:将封装好的Map进行拆解,依次拼接放入前端所需的返参中,此步需要用到递归。
</