通常使用Vue2开发的项目,普遍会存在以下问题:
- 代码的可读性随着组件变大而变差
- 每一种代码复用的方式,都存在缺点
- TypeScript支持有限
以上通过使用Composition Api都能迎刃而解
Composition Api
-
是Vue3.0新增的api,
-
一组基于函数的api,
-
可以更灵活的组织代码逻辑,将当前功能逻辑封装在一个函数中,查看的时候只需找到该功能所对应的函数就行
-
在 Vue3 Composition API 中,组件根据逻辑功能来组织的,一个功能所定义的所有 API 会放在一起(更加的高内聚,低耦合)
即使项目很大,功能很多,我们都能快速的定位到这个功能所用到的所有 API
Option Api
- 指的是一个描述组件选项的对象来创建组件的方式
- 缺点:1、代码的可读性随着组件的变大而变差
2、代码的复用方式都存在缺点
3、对TypeScript支持有限
小结
- 在逻辑组织和逻辑复用方面,Composition API是优于Options API
- 因为Composition API几乎是函数,会有更好的类型推断。
- Composition API对 tree-shaking 友好,代码也更容易压缩
- Composition API中见不到this的使用,减少了this指向不明的情况
- 如果是小型组件,可以继续使用Options API,也是十分友好的