数组对象中提取数据

数组对象中提取数据,第1张

  // 不稳定有值  initInfo
const setFrom = () => {
    console.log('initInfo:', initInfo);
    const { data, ...formData } = initInfo || {};
    console.log(data, 'formData:', formData);
    // 借助对应表checkdata,将 initData 解析成 formData
    if (params["id"] !== 'id') {
      const relation =
        checkdata.map((i) => {
          const ids: any = []
          i.data.map((j) => { ids.push(j.id) })
          return ({ [i.module]: ids })
        })
      console.log('relation:', relation);
      const a = {}
      // const res =
        relation.map((item) => {
          JSON.stringify(item)
          // console.log( ...Object.keys(item),Object.keys(item)[0] );
          let j = Object.values(item)[0]
          // console.log(j);
          let idArr = data?.filter((v) => j.includes(v))
          // console.log(idArr);
          a[Object.keys(item)[0]] = idArr  // 键为变量构造对象时 a[key]:value
        // return {
        //   [Object.keys(item)[0]]: idArr
        // }
        })
      console.log('res:', a);
      let myData = {
        ...a,
        ...formData
      }
      console.log(formData, myData);
      templateForm.setFieldsValue(myData);
    }
  }
        const initInfo = {
            "role_name": "admin",
            "id": 5,
            "description": "create by zhoukf",
            "username": 'username',
            "datas": [0, 2, 7, 8, 10, 12]
        }

        let formData = {
            'Authority': [8],
            'Cloud Config': [7],
            'Package Info': [0],
            'Vehicle Visibility': [10, 12],
            'Vehicle(Bench) Info': [2],
            'description': "undef",
            'role_name': "ss",
        }
        

        // 用于构造 relation
        let list = [
            {
                "data": [
                    {
                        "id": 0,
                        "operator": "Delete package"
                    },
                    {
                        "id": 1,
                        "operator": "Edit label"
                    }
                ],
                "module": "Package Info"
            },
            {
                "data": [
                    {
                        "id": 2,
                        "operator": "Operator package"
                    },
                    {
                        "id": 3,
                        "operator": "Add new category"
                    },
                    {
                        "id": 4,
                        "operator": "Operator bench"
                    },
                    {
                        "id": 5,
                        "operator": "Manage user"
                    },
                    {
                        "id": 6,
                        "operator": "Webshell"
                    }
                ],
                "module": "Vehicle(Bench) Info"
            },
            {
                "data": [
                    {
                        "id": 7,
                        "operator": "Manage config"
                    }
                ],
                "module": "Cloud Config"
            },
            {
                "data": [
                    {
                        "id": 8,
                        "operator": "Manage authority"
                    }
                ],
                "module": "Authority"
            },
            {
                "data": [
                    {
                        "id": 9,
                        "operator": "Single"
                    },
                    {
                        "id": 10,
                        "operator": "All"
                    },
                    {
                        "id": 11,
                        "operator": "All vehicle"
                    },
                    {
                        "id": 12,
                        "operator": "All bench"
                    }
                ],
                "module": "Vehicle Visibility"
            }
        ]
        // console.log(list,Object.keys(list),Object.values(list),  );

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1324703.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-12
下一篇2022-06-12

发表评论

登录后才能评论

评论列表(0条)

    保存