值得注意的新特性
Vue 3 中需要关注的一些新特性包括:
- 组合式 API
- 单文件组件中的组合式 API 语法糖 (
<script setup>) - Teleport 组件
- Fragments 片段
- Emits 组件选项
- 来自
@vue/runtime-core的createRendererAPI 用来创建自定义渲染函数 - 单文件组件中的状态驱动的 CSS 变量 (
<style>中的v-bind) - SFC
<style scoped>新增全局规则和针对插槽内容的规则 - Suspense
什么是组合式 API?
组合式 API (Composition API) 是一系列 API 的集合,使我们可以使用函数而不是声明选项的方式书写 Vue 组件。它是一个概括性的术语,涵盖了以下方面的 API:
- 响应式 API:例如
ref()和reactive(),使我们可以直接创建响应式状态、计算属性和侦听器。 - 生命周期钩子:例如
onMounted()和onUnmounted(),使我们可以在组件各个生命周期阶段添加逻辑。 - 依赖注入:例如
provide()和inject(),使我们可以在使用响应式 API 时,利用 Vue 的依赖注入系统。
组合式 API 是 Vue 3 及 Vue 2.7 的内置功能。对于更老的 Vue 2 版本,可以使用官方维护的插件 @vue/composition-api。在 Vue 3 中,组合式 API 基本上都会配合 <script setup> 语法在单文件组件中使用。