双向数据绑定原理,是否能理解的说出来呢.

151 阅读1分钟

双向数据绑定就是数据和视图双向发生改变.

原理:在初始化vue的时候,通过Object.define.Property这个方法遍历data中的所有属性,将这些属性转为 getter方法或者setter方法,就是实现了一个对数据的监听,当获取数据时getter方法,设置数据时setter方法;通过指令编译器Compile,当编译指令的时候给每一个数据绑定一个更新函数,放到事件池wather中,wather在放到事件池Dep中.初始化完毕.. 如果数据发生改变,会触发setter方法,同时会触发事件池中这些更新函数notifi方法,让对应页面更新

mvvm:通过数据绑定方法讲后台传过来的数据让视图发生变化; 通过DOM事件监听机制当视图发生变化,后台数据也会对应变