Vue设计思想
- Vue3.0更注重模块上的拆分,在2.0中无法单独使用部分模块,需要引入完整的Vuejs,Vue3中的模块之间耦合度低,模块可以独立使用。拆分模块
- Vue2中很多方法挂载到了实例中,导致没有使用也会被打包(包括一些组件)。通过构建工具Tree-shaking机制实现按需引入,减少用户打包后体积。重写API
- Vue3允许自定义渲染器,扩展能力强,不会发生以前的事情,改写Vue源码改造渲染方式。扩展更方便
声明式架构
- 早在JQ时代编写的代码都是命令式的,命令式框架重要特点就是关注过程。
- 声明式框架更加关注结果。命令式的代码封装到Vuejs中,过程靠Vuejs来实现。
采用虚拟DOM
传统更新页面,拼凑一个完整的字符串innerHTML全部重新渲染,添加虚拟DOM后,可以比较新旧虚拟节点,找到变化在进行更新。
区分编译时和运行时
- 我们需要有一个虚拟DOM,调用渲染方法虚拟DOM渲染成真实DOM。
- 专门写个编译时可以将模板编译成虚拟DOM(在构建时进行编译性能更高,不需要在运行时进行编译,而且Vue3在编译中做了很多优化)