- Observer 数据监听器,可以或许对数据对象的所有属性进行监听,如有更改可拿到最新值并通知订阅┞愤,内部采取Object.defineProperty的getter和setter来实现。
- Compile 指令解析器,它的感化对每个元素节点的指令进行扫描和解析,根据指令模板调换数据,以及绑定响应的更新函数。
- Watcher 订阅┞愤, 作为连接 Observer 和 Compile 的桥梁,可以或许订阅并收到每个属性更改的通知,履行指令绑定的响应回调函数。
- Dep 消息订阅器,内部保护了一个数组,用来收集订阅┞愤(Watcher),数据更改触发notify 函数,再调用订阅┞愤的 update 办法。
大年夜图中可以看出,当履行 new Vue() 时,Vue 就进入了初始化阶段,一方面Vue 会遍历 data 选项中的属性,并用 Object.defineProperty 将它们转为 getter/setter,实现数据变更监听功能;另一方面,Vue 的指令编译器Compile 对元素节点的指令进行扫描和解析,初始化视图,并订阅Watcher 来更新视图, 此时Wather 会将本身添加到消息订阅器中(Dep),初始化完毕。
以上内容是我在大年夜半年的项目实践之后,对MVVM 和 Vue.js 的一点点简单熟悉和总结,欲望对各位有所赞助!
【编辑推荐】
- 总结整顿下一?快速开辟MVVM框架
- MVVM With ReactiveCocoa
- >>【直播间】移动互联网产品中若何用好HTML5?
- 挨踢部落直播教室第二期:移动互联网产品中若何用好HTML5?
- 移动开辟架构之MVVM模式
推荐阅读
【技巧沙龙】AI开辟者拭魅战营-7分钟打造1个定制技能。7月22号,我们等你一路!Win10体系装完之后,很多用户都邑立时安装本身爱好的输入法,可是虽说输入法安装成功了,然则它并不是默认的,于是有效户>>>详细阅读
本文标题:Vue.js和MVVM小细节
地址:http://www.17bianji.com/lsqh/36316.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示