摘要: 简单回顾一下这个系列的前两节,前两节花了大量的篇幅介绍了Vue的选项合并,选项合并是Vue实例初始化的开始,Vue为开发者提供了丰富的选项配置,而每个选项都严格规定了合并的策略。然而这只是初始化中的第一步,这一节我们将对另一个重点的概念深入的分析,他就是数据代理,我们知道Vue大量利用了代理的思想, 阅读全文
posted @ 2022-11-01 12:29 yyzzabc123 阅读(43) 评论(0) 推荐(0)
摘要: 前面花了两节的内容介绍了组件,从组件的原理讲到组件的应用,包括异步组件和函数式组件的实现和使用场景。众所周知,组件是贯穿整个Vue设计理念的东西,并且也是指导我们开发的核心思想,所以接下来的几篇文章,将重新回到组件的内容去做源码分析,首先会从常用的动态组件开始,包括内联模板的原理,最后会简单的提到内 阅读全文
posted @ 2022-10-31 10:00 yyzzabc123 阅读(24) 评论(0) 推荐(0)
摘要: 从这一小节开始,正式进入Vue源码的核心,也是难点之一,响应式系统的构建。这一节将作为分析响应式构建过程源码的入门,主要分为两大块,第一块是针对响应式数据props,methods,data,computed,wather初始化过程的分析,另一块则是在保留源码设计理念的前提下,尝试手动构建一个基础的 阅读全文
posted @ 2022-10-31 10:00 yyzzabc123 阅读(43) 评论(0) 推荐(0)
摘要: 上一节,我们深入分析了以data,computed为数据创建响应式系统的过程,并对其中依赖收集和派发更新的过程进行了详细的分析。然而在使用和分析过程中依然存在或多或少的问题,这一节我们将针对这些问题展开分析,最后我们也会分析一下watch的响应式过程。这篇文章将作为响应式系统分析的完结篇。 7.12 阅读全文
posted @ 2022-10-31 09:59 yyzzabc123 阅读(30) 评论(0) 推荐(0)
摘要: 这个系列讲到这里,Vue基本核心的东西已经分析完,但是Vue之所以强大,离不开它提供给用户的一些实用功能,开发者可以更偏向于业务逻辑而非基本功能的实现。例如,在日常开发中,我们将@click=***用得飞起,但是我们是否思考,Vue如何在后面为我们的模板做事件相关的处理,并且我们经常利用组件的自定义 阅读全文
posted @ 2022-10-27 15:09 yyzzabc123 阅读(79) 评论(0) 推荐(0)
摘要: 初学vue,你得知道我们是从new Vue开始的: new Vue({ el: '#app', data: obj, ... }) 那你觉得是不是很有意思,咱们new Vue之后,就可以使用他那么多的功能,可见Vue是暴出来的一个一个功能类函数,我们进入源码一探究竟: import Vue from 阅读全文
posted @ 2022-10-27 15:09 yyzzabc123 阅读(62) 评论(0) 推荐(0)
摘要: 这一节,依然是深入剖析Vue源码系列,上几节内容介绍了Virtual DOM是Vue在渲染机制上做的优化,而渲染的核心在于数据变化时,如何高效的更新节点,这就是diff算法。由于源码中关于diff算法部分流程复杂,直接剖析每个流程不易于理解,所以这一节我们换一个思路,参考源码来手动实现一个简易版的d 阅读全文
posted @ 2022-10-26 14:23 yyzzabc123 阅读(53) 评论(0) 推荐(0)
摘要: 双向数据绑定这个概念或者大家并不陌生,视图影响数据,数据同样影响视图,两者间有双向依赖的关系。在响应式系统构建的上,中,下篇我已经对数据影响视图的原理详细阐述清楚了。而如何完成视图影响数据这一关联?这就是本节讨论的重点:指令v-model。 由于v-model和前面介绍的插槽,事件一致,都属于vue 阅读全文
posted @ 2022-10-26 14:22 yyzzabc123 阅读(69) 评论(0) 推荐(0)
摘要: 一、Vue.nextTick 内部逻辑 在执行 initGlobalAPI(Vue) 初始化 Vue 全局 API 中,这么定义 Vue.nextTick。 function initGlobalAPI(Vue) { //... Vue.nextTick = nextTick; } 可以看出是直接把 阅读全文
posted @ 2022-10-25 12:21 yyzzabc123 阅读(58) 评论(0) 推荐(0)
摘要: 4.1 Virtual DOM 4.1.1 浏览器的渲染流程 当浏览器接收到一个Html文件时,JS引擎和浏览器的渲染引擎便开始工作了。从渲染引擎的角度,它首先会将html文件解析成一个DOM树,与此同时,浏览器将识别并加载CSS样式,并和DOM树一起合并为一个渲染树。有了渲染树后,渲染引擎将计算所 阅读全文
posted @ 2022-10-25 12:20 yyzzabc123 阅读(36) 评论(0) 推荐(0)