2026-01-24 抽取数组里相同的数据并重新排序,2个例子

2026-01-23  本文已影响0人  SherrinfordL
1.
const arr = Object.values(
  details.reduce((acc, item) => {
    const groupKey = item.parentMaterialCode
    if (!acc[groupKey]) {
      acc[groupKey] = { ...item, parentMaterialCode: groupKey, childMaterial: [] }
    }
    acc[groupKey].childMaterial.push({
      ...item,
      // materialName: item.materialName,
      // materialCode: item.materialCode,
      // materialTypeId: item.materialTypeId,
      sampleAttachments: item.sampleAttachments && item.sampleAttachments[0]?.files?.map((v) => {
        const { fileName, url, value, state, name, id } = v
        return {
          originName: name,
          fileName,
          url,
          id,
          value,
          state,
          name
        }
      }) || []
    })

    return acc
  }, {})
)

2.
const objFilter = data.details.reduce((acc, item) => {
            const groupKey = item.parentMaterialCode;
            if (!acc[groupKey]) {
              acc[groupKey] = [{ ...item }];
            } else {
              acc[groupKey].push({ ...item });
            }

            return acc;
          }, {});

上一篇 下一篇

猜你喜欢

热点阅读