Loading

Vue监视数据的原理

  1. vue会监视data中所有层次的数据。

  2. 如何监测对象中的数据?

    ​ 通过setter实现监视,且要在new Vue时就传入要监测的数据。

    ​ (1)对象中后追加的属性,Vue默认不做响应式处理。

    ​ (2)如需给后添加的属性做响应式处理,请使用如下API:

    Vue.set(target,index/propertyName,value)

    vm.$set(target,index/propertyName,value)

  3. 如何监测数组中的数据?

    ​ 通过包裹数组更新元素的方法实现,本质就是做了两件事情:

    ​ (1)调用原生对应的方法对数组进行更新。

    ​ (2)重新解析模板,进而更新界面。

  4. Vue修改数组中的某个元素一定要用如下方法:

    ​ (1)使用这些API:

     push()
     pop()
     shift():删除头一个
     unshift():在开头添加
     splice(index,删除个数,添加数据)
     sort()
     reverse()
    

    ​ (2)Vue.set() 或 vm.$set()

    ​特别注意:Vue.set() 或 vm.$set()不能给vm或者vm根数据对象添加属性!!!

posted @ 2021-10-05 21:18  IamHzc  阅读(66)  评论(0编辑  收藏  举报