最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

Vue原理

XAMPP下载 admin 1058浏览 0评论
vue双向绑定的核心是通过Object.defineProperty()在实现数据劫持。因为Object.defineProperty()是ES5中一个无法shim的特性,这也就是为什么vue支持IE8以上的浏览器。
QQ截图20190103164117
首先我们需要设置一个监听器Observer,用来监听所有属性。如果属性值发生了改变,就需要告诉订阅者Watcher看是否需要更新。因为订阅者是有很多个,所以,我们需要有一个消息订阅器Dep来专门收集这些订阅者,然后在监听者和订阅者之间进行统一管理。接着,我们还需要一个指令解析器,对每个节点进行扫描和解析,将相关指令对应初始化成一个订阅者Watcher,并替换模板数据或者绑定响应的函数,此时当Watcher接收到响应属性的变化,就会执行对应的更新函数,从而更新视图。

实现一个数据监听器Observer,能够对数据对象的所有属性进行监听,如有变动可拿到最新值并通知订阅者
实现一个指令解析器Compile,对每个元素节点的指令进行扫描和解析,根据指令模板替换数据,以及绑定相应的更新函数
实现一个Watcher,作为连接Observer和Compile的桥梁,能够订阅并收到每个属性变动的通知,执行指令绑定的相应回调函数,从而更新视图

转载请注明:XAMPP中文组官网 » Vue原理

您必须 登录 才能发表评论!