vue双向绑定原理
vue的双向绑定原理是通过Object.definedProperty实现的,但最主要的是需要监听到数据属性变化之后去通知改变view,大致的逻辑如下:
一开始new Vue初始化observe和compile,通过Object.definedProperty监听数据,compile负责协调判断vue的指令种类并对视图进行更新,compile增加watcher,将更新视图的回调函数传入watcher中。watcher加入改变的属性订阅者,observe监听到后notify相应的订阅者去处理,dep再调用更新属性的update方法,watcher触发update执行run后执行回调函数render view。