对vue的mvvm的个人理解

对vue的mvvm的个人理解

vue的mvvm响应式原理这个问题困扰了我好久;
就在不久之前,我看了一段讲vue源码的视频,终究是对mvvm的响应式原理有了一点个人的理解;

mvvm即model-view-viewmodel;简单来说就是数据的双向绑定,

首先,vue的mvvm是通过Object.defineProperty()对数据的劫持;然后,当数据发生改变时,就会触发回调函数,来重绘页面。

MVVM作为数据绑定的入口,整合Observer、Compile和Watcher三者,Observer负责监听自己的model数据变化,Compile用来解析编译模板指令,最终通过Watcher搭起Observer和Compile之间的通信桥梁,达到数据变化 -> 视图更新;视图交互变化(input) -> 数据model变更的双向绑定效果。

本人也在学习过程中,如有不正确的地方也希望指出,谢谢!

你可能感兴趣的:(对vue的mvvm的个人理解)