抱着猫睡觉的鱼_ 2021-10-12 10:31 采纳率: 51.7%
浏览 41
已结题

vue数组数据处理问题。

数据格式如下,需要改变原数组 解析一下checkList

let data = [
    {
        "message": "未查询到单据 '2a0c166c-08c0-4e3c-b83c-6b1bdf24c113' 对应计量单位!",
        "id": "2a0c166c-08c0-4e3c-b83c-6b1bdf24c113",
        "productname": "iphone13",
        "productcode": "0003",
        "barcode": "",
        "category": "ab22b722-f3f2-4b34-a38c-311838fd554f",
        "categoryName": "笔记本",
        "brand": "3ca06784-de9c-400a-b7b0-826c231bfeaa",
        "brandName": "Apple",
        "spectemplate": "312e36e4-a74d-464c-b165-c3fc03dab03e",
        "spectemplateName": "颜色",
        "measureunit": "",
        "listprice": 0,
        "isrecommend": "1",
        "description": "",
        "lastModifier": "",
        "createdTime": "2021-10-09 11:21:39",
        "lastModifiedTime": "2021-10-11 14:15:36",
        "rightList": [
            {
                "id": "5fdb8dd0-5f67-4c8b-a23d-081de97717b1",
                "parentId": "2a0c166c-08c0-4e3c-b83c-6b1bdf24c113",
                "attributeName1": "大小1",
                "attributeValue1": "小",
                "attributeName2": "颜色",
                "attributeValue2": "白色",
                "skuCode": "1001",
                "skuName": "iphone13",
                "price": 6000,
                "isShelf": "上架",
                "uniqueCategoryKey": "1323"
            },
            {
                "id": "d08c8f6b-f53f-49f2-b681-06d9e1c42cef",
                "parentId": "2a0c166c-08c0-4e3c-b83c-6b1bdf24c113",
                "attributeName1": "大小1",
                "attributeValue1": "小",
                "attributeName2": "颜色",
                "attributeValue2": "黑色",
                "skuCode": "1002",
                "skuName": "iphone13pro",
                "price": 7000,
                "isShelf": "上架",
                "uniqueCategoryKey": "1322"
            }
        ],
        "checkList": [
            "{\"id\":\"5fdb8dd0-5f67-4c8b-a23d-081de97717b1\",\"parentId\":\"2a0c166c-08c0-4e3c-b83c-6b1bdf24c113\",\"attributeName1\":\"大小1\",\"attributeValue1\":\"\",\"attributeName2\":\"颜色\",\"attributeValue2\":\"白色\",\"skuCode\":\"1001\",\"skuName\":\"iphone13\",\"price\":6000,\"isShelf\":\"上架\",\"uniqueCategoryKey\":\"1323\"}",
            "{\"id\":\"d08c8f6b-f53f-49f2-b681-06d9e1c42cef\",\"parentId\":\"2a0c166c-08c0-4e3c-b83c-6b1bdf24c113\",\"attributeName1\":\"大小1\",\"attributeValue1\":\"\",\"attributeName2\":\"颜色\",\"attributeValue2\":\"黑色\",\"skuCode\":\"1002\",\"skuName\":\"iphone13pro\",\"price\":7000,\"isShelf\":\"上架\",\"uniqueCategoryKey\":\"1322\"}"
        ]
    }
]

我这么写原数组并没有被改变,求详细解释

//增加属性确定按钮
    onSave() {
      this.copyLeftData = JSON.parse(JSON.stringify( this.leftData))
      this.copyLeftData =  this.copyLeftData.filter(items=>items.checkList.length>0)
      this.copyLeftData.forEach(item=>{
        console.log(item)
        item.checkList.forEach(item2=>{
          let rightItem = item2;
          if (typeof item2 == "string") {
          item2 =  JSON.parse(item2)
            // rightItem = JSON.parse(item2);
            // console.log(rightItem,'确定数据11111111111')
          }
        })
       
      })

  • 写回答

1条回答 默认 最新

  • 三千烦恼丝xzh 2021-10-12 10:47
    关注

    数组filter、map之类函数返回的是一个新数组,你可以再链式调用上把这些步骤直接走完后把新数组给源数组

    
    this.copyLeftData = JSON.parse(JSON.stringify( this.leftData))
      .filter(items => items.checkList.length>0)
      .map(item => item.map(item2 => typeof item2 == "string" ? JSON.parse(item2) : item2))
    
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月12日
  • 创建了问题 10月12日

悬赏问题

  • ¥20 有偿:在ubuntu上安装arduino以及其常用库文件。
  • ¥15 请问用arcgis处理一些数据和图形,通常里面有一个根据点划泰森多边形的命令,直接划的弊端是只能执行一个完整的边界,但是我们有时候会用到需要在有很多边界内利用点来执行划泰森多边形的命令
  • ¥30 在wave2foam中执行setWaveField时遇到了如下的浮点异常问题,请问该如何解决呢?
  • ¥20 看图片)删除这个自动化录屏脚本就一直报错找不到脚本文件,如何解决?(相关搜索:bat文件)
  • ¥750 关于一道数论方面的问题,求解答!(关键词-数学方法)
  • ¥200 csgo2的viewmatrix值是否还有别的获取方式
  • ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
  • ¥15 请把下列每一行代码完整地读懂并注释出来
  • ¥15 pycharm运行main文件,显示没有conda环境
  • ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件