Typescript IIMT 模式

2023-07-02
阅读 4 分钟
950
今天学习 TypeScript 的一种新的转换类型操作:索引映射类型——IIMT(Immediately Indexed Mapped Type)。
封面图

手摸手实现Transition

2022-03-30
阅读 29 分钟
1.8k
如果你还没有使用过Transition组件或者对其不熟悉,那么我建议你可以先学习官方文档,写一些demo,当熟悉了Transition组件之后,但是又对其原理有所好奇,就可以再回来学习这篇文章。官方文档👉传送门。
封面图

Vue3 渲染器分析

2022-03-11
阅读 6 分钟
1.9k
在上一篇中,我们知道render函数最终是通过baseCreaterenderer创建的。当通过createApp API 创建的组件实例调用mount方法挂载组件的时候,其实mount方法也是通过调用render方法。完成组件的渲染工作。这篇文章主要分析是对baseCreateRender函数源码进行分析。baseCreateRenderer函数的整体代码大概有一千多行。包含的信...
封面图

Vue3 Keep-Alive组件原理分析

2022-03-10
阅读 11 分钟
3.9k
KeepAlive组件是Vue中的内置组件,主要用于保留组件状态或者避免组件重新渲染。 KeepAlive组件接受三个Props属性:include - string | RegExp | Array。只有名称匹配的组件会被缓存。exclude - string | RegExp | Array。任何名称匹配的组件都不会被缓存。max - number | string。最多可以缓存多少组件实例。使用方法: ...
封面图

Vue3 任务调度器 scheduler 源码分析

2022-03-09
阅读 7 分钟
3k
前置铺垫:schedler的源码虽然只有二百多行,并且与组件更新前后、更新中的所有执行的【任务】有关。【任务】在这里有比较抽象,理解起来比较困难。好在有一点就是我们在上一篇的文章中有理解到一个任务:watch Effect。我们就可以结合这个job,对scheduler进行分析。在后续的文章中,当我们讲解到update阶段的时候,会...
封面图

Vue3 diff算法图解分析

2022-03-08
阅读 11 分钟
1.2k
Vue3 diff算法图解分析大家好,我是剑大瑞,本篇文章主要分析Vue3 diff算法,通过本文你可以知道:diff的主要过程,核心逻辑diff是如何进行节点复用、移动、卸载并有一个示例题,可以结合本文进行练习分析如果你还不是特别了解Vnode、渲染器的patch流程,建议先阅读下面两篇文章:Vnode渲染器分析1.0 diff 无key子节点在...
封面图