一、什么是响应式?
vue可以监听一个变量的变化,当变量发生变化时,vue可以做一些工作
二、面试官问响应式原理,问的是什么?
问的是vue如何监听data选项上的变化的
vue2中,使用Object.defineProperty来实现响应式
给对象添加属性时,可以为属性添加getter/setter的钩子。当这个属性被访问时,get钩子会执行;当修改这个属性时,set钩子会执行,这就实现了响应
响应式原理图解1-1
vue组件实例化:对data选项上的数据进行劫持
初始化:init()把那些响应式变量渲染到DOM上
观察者:Watcher()触发依赖收集异步执行、更新DOM;
dep:收集依赖;