Vue核心原理知识点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue核心原理知识点相关的知识,希望对你有一定的参考价值。

数据代理(MVVM.js)
1.通过一个对象代理对另一个对象中属性的操作(读/写)
2.通过vm对象来代理data对象中所有属性操作
3.好处:更方便的操作data中的数据
4.基本实现流程
1>通过Object.defineProperty()给vm添加与data对象的属性对应得属性描述符
2>所有添加的属性都包含getter/setter
3>在getter/setter内部去操作data中对应的属性数据

模板解析(compile.js)用来初始化显示
1.模板解析的关键对象:compile.js
2.模板解析的基本流程
1>将el的所有子节点取出,添加到一个新建的文档fragment中
2>对fragment中的所有层次子节点递归进行编译解析处理
对插值语法文本进行解析
对元素节点的指令属性进行解析
事件指令解析
一般指令解析
3>将解析后的fragment添加到el中显示
3.解析大括号表达式文本节点 {{name}} textnode textContent = value
1>根据正则对象得到匹配出的表达式字符串:子匹配/RegExp.$1
2>从data中取出表达式对应的属性值

4.事件指令解析
1>从指令名中取出事件名
2>根据指令的值从methods中得到对应的事件处理函数对象
3>给当前元素节点绑定指定事件名和回调函数的事件监听
4>指令解析完后,移除此指令属性

5.一般指令解析
1>得到指令名指令值
2>从data中根据表达式得到对应的值
3>根据指令名确定需要操作元素节点的什么属性
v-text textContent属性
v-html innerHtml属性
v-class className属性
4>将得到的表达式的值设置到对应的属性上
5>移除元素的指令属性

以上是关于Vue核心原理知识点的主要内容,如果未能解决你的问题,请参考以下文章

Vue知识点汇

VUE底层原理之数据双向绑定

Vue.js双向绑定的实现原理

Vue.js双向绑定原理

Vue.js双向绑定的实现原理

Vue.js双向绑定的实现原理