浅析Vue 数据响应式的理解

122 阅读1分钟

响应式就是对外界变化做出反应的一种形式;

数据响应式就是当数据改变后,Vue 会通知到使用该数据的代码。例如,视图渲染中使用了数据,数据改变后,视图也会自动更新。

  • Vue的data就是响应式
     const vm =new Vue({
         data:{n:0}
         
     })

如果我修改了 vm.n 或者 data.n 时,UI里面的n就会响应我

  • Vue 2 通过Object.defineProperty 来实现数据响应式

    1.  可以给对象添加属性value
    2.  可以给对象添加getter/setter
    3.  getter/setter用于对属性的读写进行监控
    

缺点:

   1.无法监听es6的Set、Map变化
   2.无法监听Class类型的数据;
   3.属性的新家或删除也无法监听
   4.数组元素的增加和删除也无法监听