通过构造树形结构介绍map的用法

文章讲述了如何在前端使用计算属性和map方法,将后端返回的TPMGroup数据结构(包含部门名和员工列表)转换成适合TreeSelect组件的树形数据接口。作者展示了如何通过递归遍历和构建children属性来实现这一过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

构造TreeSelect树形结构:

当我们拿到的数据与我们要用的数据不一致时,就要改造成自己想要的数据结构。

后端拿到的数据结构:

public class TPMGroup
    {
        public string DepName { get; set; }
        public List<staff> TPMList { get; set; }
        public TPMGroup()
        {
            TPMList = new List<staff>();
        }
    }

想要构造TreeSelect的数据结构:

export interface treeData {
  value: string;
  label: string;
  children: Array<treeData>;
}

如何通过前端修改为自己想要的数据接口?:

const TPMListInfo = computed(() => {
  console.log("data houduan: ", props.TPMGroups);
  return props.TPMGroups.map(item => {
    return {
      value: "",
      label: item.DepName,
      children: item.TPMList.map(t => {
        return {
          value: t.JobNumber,
          label: t.WorkerName + "/" + t.JobNumber,
          children: []
        };
      })
    };
  });
});

map方法:拿到一个数组的部分或全部数据,重新构造一个数组并返回。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值