vue:ob: Observer【数组和对象的转化】

问题:vue中的data数据的this.data在mothods中遍历,却无法取值

  • 但是可以打印出来:
    • 数组里边有个__ob__: Observer
      console.log(this.data)的数据
    • 数组里边每个对象有个__ob__: Observer
      在这里插入图片描述

分析

  • _ob_: Observer是 Vue 对数据监控添加的属性,不可枚举和遍历

解决(转化之后即可取值)

  • 将数组转为普通数组,再将数组里边的对象转为普通对象,如下:
         let newarr = Object.assign([],this.data).map(item => {
          return Object.assign({},item)
        })
  • 结果:
    监控属性素组变为一般数组
    在这里插入图片描述

总结

  1. Object.assign({},this.data)+Object.assign({},this.data)
  2. JSON.parse(JSON.stringify(this.data))
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐