title | home | actionText | actionLink | meta | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Vue3解析 |
true |
开始 → |
/v3/idea/vue |
|
在学习Vue3
期间断断续续查阅了各种资料,但是一直没有找到一份完整的系统的对Vue3
进行剖析的资料,
于是决定写这一整个Vue3
解析也是希望能系统全面的概括到Vue3
的大部分内容;在构思这整个Vue3
解析时,
先后看了尤大的state of vue3
、vue conf
等等演讲内容感觉受益匪浅,
于是决定在开始Vue3
解析前好好聊一聊vue
的设计理念、升级重心等等前置内容。
在Vue2
的时代,通过数据驱动和组件化系统已经将视图开发简化到一个非常直观的层次,基本上简单熟悉下一下API
就能做出一个不错的系统;
快速上手固然很好,但是不曾了解原理可能会产生一些困惑,例如:
- 在
vue
内部修改了模板依赖的属性或者值,需要在nextTick
中访问到dom
的同步更改- 对于定义好的响应式对象不能够动态的添加新的元素和属性(
Vue2.x
),否则新增加的属性会没有响应式效果- ......
其中一些困惑可能来自vue
运行机制带来的心智负担,也有一些来自实现vue
特性所使用JavaScript
语言版本的局限;
对于阅读理解一个框架来说,如果我们从API
入手可能不是那么合理,因为API
的设计封装是服务于框架抽象的模式与设计理念的,
当我们我们理解完一个API
的实现后,如果没有对整体系统设计的了解总是会被某某API
为什么要这样实现所困惑;
所以从框架的设计理念入手再深入到API
的实现就会显得更加合理一些,我们有必要适当的了解vue
背后的设计理念;
框架的实施践行设计者的思想,如果我们能带着对框架本身架构设计的思考去阅读源码,肯定是可以 get 到更多知识点的,
同时这也让我们的理解更加立体,在深入到源码中时能更加容易的串联整体。
理念篇
主要关注Vue3
的升级重心和Vue
设计思想
运行时篇
主要关注组件系统和运行时调度以及VNode
相关知识点
响应式系统
主要关注响应式API
的实现
扩展篇
主要关注内建组件和实用特性例如:Props
、Slot
和指令等等