Vue2于Vue3的对比
- Vue2所有的属性都放在this对象上,对TypeScript支持不友好
- Vue2大量的API挂载在Vue对象的原型上,难以实现TreeShaking
- Vue2架构层面对跨平台dom渲染开发支持不友好
- Vue3特有的CompositionAPI,受ReactHook启发
- Vue3对虚拟DOM进行了重写,对模版的变异进行了优化
- Vue3使用monorepo对多个package放在一个repo中(可以按需引用)
monorepo介绍
- monorepo是一种将多个package放在一个repo中的代码管理模式
- Vue3中使用yarn worksapce + lerna来管理项目(避免每个package中有相同的dependencies,在install时出现重复安装)
monorepo环境的搭建
- 项目初始化
- 创建其他的子包
- 安装rollup打包的相关依赖
- 配置rollup打包配置文件