zoukankan      html  css  js  c++  java
  • 数组操作 filter和find

    现在有个需求:

     后端给一个list过来,1-4,有就显示,没有前面四个card就空着,从第五个开始,有数据就循环出来,区别他们的kind字段。

    这里想了很久怎么写,最后决定,洗数据.

    就是从给给的数据,前面四个进行判断,有就写进固定的地方,没有就为空。

    后面的数据循环

    再把数组a+数组b,进行map渲染card

    前面四个数据,是查出来的单个数组对象,用find

    4个后面其他的数据,是查出来所有的数组,用filter

    代码

    const fourAheadData = [
      {
        title: "云安全服务",
        subhead: "建立全方位的安全保障体系",
        iconType: "icon-cloud-safe",
        key: "security",
        params: {}
      },
      {
        title: "云监控服务",
        subhead: "实现高效流程化的IT运维",
        iconType: "icon-cloud-watch",
        key: "Monitoring",
        params: {}
      },
      {
        title: "云运维服务",
        subhead: "提供全方位的监控和分析",
        iconType: "icon-cloud-ops",
        key: "ops",
        params: {}
      },
      {
        title: "云堡垒服务",
        subhead: "提供全方位的安全管控",
        iconType: "iconyunbaolei_huaban93-93",
        key: "Bastion",
        params: {}
      }
    ]
    
     fourAheadData[0].params = data.find(item => item.kind === 2)
        fourAheadData[1].params = data.find(item => item.kind === 4)
        fourAheadData[2].params = data.find(item => item.kind === 3)
        fourAheadData[3].params = data.find(item => item.kind === 5)
    
     const otherData = data.filter(item => item.kind === 6)
        (otherData || []).map(item => {
          const obj = {
            title: item.serviceName,
            subhead: "",
            iconType: "iconyunbaolei_huaban93-93",
            key: "",
            params: item
          }
          return fourAheadData.push(obj)
        })
    
        return fourAheadData
    

      

    洗的数据打印出来是这样的,然后循环输出

  • 相关阅读:
    一周见闻速记
    glibc下的内存管理
    流(flow)
    Liunx学习笔记
    逆向工程androidAPK(待补充)
    Ubuntu Linux环境搭建|软件篇
    Ubuntu Linux 源记录
    android 权限
    Android源码下载(ubuntu12.04(amd64))
    游戏外挂编程之神器CE的使用
  • 原文地址:https://www.cnblogs.com/rong88/p/13367492.html
Copyright © 2011-2022 走看看