Vue 3 什么是 class-基于 API、基于函数 API、反应性 API 和组合 API

Vue 3 what is the class-Based API, function-based API, Reactivity API and composition API

当我开始使用 vue 3 时,我看到了这些概念:

有人能告诉我们这些的定义吗?

2021 年更新

我添加了选项 API 和反应性 API

请注意,主要文档提到 Options-based,而不是 Object-based,但即使在 Evan 的参考文献中,它们似乎可以互换。

基于选项的API是基于Class的并且基于函数的API是组合API.

Option-based vs Function-based 表示,我会称之为,如何区分 [=51] 的理论模型=]秒。而 Class-basedComposition 区分实现。

Options-based/Class-based API

你有vue1和vue2用的老办法,叫class-based,简称Option-basedAPI。

命名意味着组件是由选项定义的。您可能会将选项视为 datacomputedmethods 等...它们通过使用您重载的一组预定义选项来定义组件的工作方式。

这种定义功能的方式的缺点是实际的组件逻辑分布在各种“选项”之间,这使得从代码中理解组件的实际功能变得更加困难。

Function-based/Composition API

功能意味着我们正在声明组件的功能(而不是它使用的是功能组件)。组合 API 使代码更易于重用(因为您不需要将功能的各个方面紧密耦合到组件)并且更易于阅读和维护(因为您可以将功能封装在更小的专用单元中)