vue中__ob__: Observer的踩坑记录

 更新时间:2023年10月17日 08:58:17   作者:有玉微凉,是为樱琅  
这篇文章主要介绍了vue中__ob__: Observer的踩坑记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

vue中__ob__: Observer踩坑

问题分析

看这个问题的朋友先看看情况是不是和我一样,再往下看

我的问题是一个对象数组,push进去对象的话,打印出来看,显示的是 [ob: Observer],点看能看到里面的数据,但是我遍历他的话一个值也拿不到,拿到的是空值,如果push的普通的数字,字符串啥的就没事。

如果问题一样的话可以继续往下看了。

经过半天的各种分析,网上看博客,然后自己也尝试了在不同位置打console.log和断点查看,

发现在给对象数组中push进去数据的时候,打印出来就是完美的对象数组,可以遍历,但是我要用的时候的那个地方打印出来就是这样的 [ob: Observer],而且他的console比push数据的地方打印出来的快,提前打印了,说明了现在是异步操作,我要用的地方数据提前打印了。

解决问题

开始我用了async await 来阻塞它,但是没啥用,最后没办法,只能用监听了

在监听这里不停的操作他,最后才解决了问题

一些小坑

JS中include不能查看对象是否重复

我操作的话是把对象JSON.stringify成字符串,存的时候也是按照这样存,查的时候也这样查,用的时候使用数组的map方法修改他的值,更改之后使用。

vue中__ob__: Observer属性对象

__ob__: Observer是什么?

_ob__: Observer这些数据是vue这个框架对数据设置的监控器,一般都是不可枚举的。

1.vue中为什么[__ob__: Observer]下无法取到数据或者取数据时出现慢一步的情况

_ob__: Observer表示很无辜。一般情况时数据本身的问题,考虑赋值是否时异步了或者慢于监听器。这一点需要注意。

2._ob__: Observer的取用方式

  • 第一种:Object.assign({},this.owner)
  • 第二种:JSON.parse(JSON.stringify(this.list))

3.[ob: Observer]: 可视察数组,不能通过tableData === []这样判断是否为空,需要使用数组的长度判断才有效:tableData.length > 0

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 帮助我们高效操作的Virtual DOM简单实现

    帮助我们高效操作的Virtual DOM简单实现

    这篇文章主要为大家介绍了帮助我们高效操作Virtual DOM简单实现及原理解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • vue-cli创建项目时由esLint校验导致报错或警告的问题及解决

    vue-cli创建项目时由esLint校验导致报错或警告的问题及解决

    这篇文章主要介绍了vue-cli创建项目时由esLint校验导致报错或警告的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • Vue 中使用 typescript的方法详解

    Vue 中使用 typescript的方法详解

    Typescript 5年内的热度随时间变化的趋势,整体呈现一个上升的趋势。也说明ts越来越️受大家的关注了。这篇文章主要介绍了Vue 中使用 typescript的方法详解,需要的朋友可以参考下
    2020-02-02
  • vue中使用input[type=

    vue中使用input[type="file"]实现文件上传功能

    这篇文章主要介绍了vue中使用input[type="file"]实现文件上传功能,实现代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • Vue2.0子同级组件之间数据交互方法

    Vue2.0子同级组件之间数据交互方法

    下面小编就为大家分享一篇Vue2.0子同级组件之间数据交互方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • Vue3中操作dom的四种方式总结(建议收藏!)

    Vue3中操作dom的四种方式总结(建议收藏!)

    VUE是通过传递一些配置给Vue对象和页面中引用插值表达式来操作DOM的,下面这篇文章主要给大家介绍了关于Vue3中操作dom的四种方式总结,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • 利用Vue实现卡牌翻转的特效

    利用Vue实现卡牌翻转的特效

    这篇文章主要介绍了如何利用Vue实现一个春节抽福卡页面,采用了卡牌翻转的形式。文中的实现方法讲解详细,快跟随小编一起学习一下吧
    2022-02-02
  • 浅谈vuex之mutation和action的基本使用

    浅谈vuex之mutation和action的基本使用

    本篇文章主要介绍了浅谈vuex之mutation和action的基本使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Vue报错:Uncaught TypeError: Cannot assign to read only property’exports‘ of object’#<Object>‘的解决方法

    Vue报错:Uncaught TypeError: Cannot assign to read only propert

    这篇文章主要给大家介绍了关于Vue报错:Uncaught TypeError: Cannot assign to read only property 'exports' of object '#<Object>' 的解决方法,文中介绍的非常详细,需要的朋友们下面来一起看看吧。
    2017-06-06
  • 详解Vue + Vuex 如何使用 vm.$nextTick

    详解Vue + Vuex 如何使用 vm.$nextTick

    这篇文章主要介绍了详解Vue + Vuex 如何使用 vm.$nextTick,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11

最新评论