
底层原理
2c不高兴
一枚前端开发搬运工,面向api开发,百度谷歌搜索一键复制粘贴攻城狮
展开
-
双向绑定原理
采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。当把一个普通的 JavaScript 对象传给 Vue 作为它的 data 选项时,Vue 将遍历它的属性,用 Object.defineProperty 将它们转化为 getter/setter,用户看不到getter/setter,但是在内部它们让 Vue 追踪依赖,在属性被访问和修改时通知变化。1、实现一个数据监听器原创 2021-07-09 14:03:27 · 11961 阅读 · 0 评论 -
HTML是如何渲染的(回流、重绘)
1.网络请求2.页面渲染解析HTML文件,构建DOM树解析CSS文件,构建CSSOM树将DOM树和CSSOM树合并,生成渲染树计算渲染树的布局将布局渲染到屏幕上什么是回流当render tree中的一部分(或全部)因为元素的规模尺寸,布局,隐藏等改变而需要重新构建。这就称为回流(reflow)。每个页面至少需要一次回流,就是在页面第一次加载的时候,这时候是一定会发生回流的,因为要构建render tree。在回流的时候,浏览器会使渲染树中受到影响的部分失效,并重新构造这部分渲染树,完成回原创 2021-06-25 14:50:29 · 12377 阅读 · 0 评论 -
双向绑定原理(个人理解)
原文章:https://segmentfault.com/a/1190000006599500数据劫持: vue.js 是采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。observe的数据对象进行递归遍历,包括子属性对象的属性,都加上 setter和getter这样的话,给这个对象的某个值赋值,就会触发setter,那么就能监听到了数据变化。。实现Watcher原创 2021-06-25 14:24:59 · 12093 阅读 · 0 评论