Vue3 组合式 API 核心 —— setup() 函数详解
一、setup() 函数简介
setup()是 Vue 3 组合式 API 的核心入口,用于在组件实例创建前初始化状态、定义方法和注册副作用。- 特点:
- 在组件创建前执行
- 访问 props,但不能访问 this
- 返回的数据会暴露给模板使用
二、setup() 基本语法
ref:创建响应式数据computed:计算属性- 返回值:在
<script setup>中自动暴露给模板
三、setup() 参数
| 参数 | 说明 |
|---|---|
props | 接收父组件传递的数据 |
context | 包含 attrs、slots 和 emit |
context.emit | 触发自定义事件 |
context.slots | 获取插槽内容 |
context.attrs | 获取未声明的属性 |
示例:
四、响应式数据与模板绑定
1. 基本响应式
2. 响应式对象
五、组合函数(Composition Functions)
- 将逻辑抽离到独立函数,实现复用:
- 在组件中使用:
六、生命周期钩子
- 在 setup 中使用
onMounted、onUnmounted等:
七、常见注意事项
- setup 中不能使用 this
- 返回值:只有返回对象中的属性和方法会暴露给模板
- 响应式数据:
ref访问时要.value,模板中自动解包 - 组合函数:逻辑复用利器,提升代码可维护性
💡 总结
setup()是 Vue 3 组合式 API 的入口- 负责初始化状态、方法、计算属性和副作用
- 配合
ref、reactive、生命周期钩子和组合函数,可实现模块化、可复用和易维护的组件逻辑
评论
发表评论