vue3学习笔记(2)

1.defineProps 属性

props可以实现父子组件通信,在vue3中我们可以通过defineProps获取父组件传递的数据。且在组件内部不需要引入defineProps方法可以直接使用!

javascript 复制代码
const props = defineProps<{
  agreePolicy: boolean
}>()

2. 声明触发的事件 defineEmits()

如果你正在搭配 TypeScript 使用 <script setup>,也可以使用纯类型标注来声明触发的事件:

javascript 复制代码
const $emit = defineEmits<{
  loginSuccess: [response: LoginSuccessResType]
}>()

3.子组件使用defineExpose把那个变量暴露出去

defineExpose是vue3新增的一个api,放在<scipt setup>下使用的,目的是把属性和方法暴露出去,可以用于父子组件通信,子组件把属性暴露出去, 父组件用ref获取子组件DOM,子组件暴露的方法或属性可以用dom获取。

父组件用ref获取子组件dom拿到暴露的属性

javascript 复制代码
defineExpose({
  formData,
  passRuleFlag,
  codeLogin,
  clearTimer
})
相关推荐
里欧跑得慢38 分钟前
CSS 模块化架构的演进:BEM、CSS Modules 到 CSS-in-JS 的反思
前端·css·flutter·web·css-in-js
hsjiasb42 分钟前
FreeRTOS学习(三十七)——常见错误与工程规范
学习·学习笔记·freertos
IT_陈寒1 小时前
Vue的computed属性把我坑惨了,原来我一直用错姿势
前端·人工智能·后端
小席是个热心肠1 小时前
Redis的自我学习
数据库·redis·学习
小灰灰搞电子1 小时前
Rust+Slint 实现温度计源码分享
前端·rust·slint
计算机魔术师2 小时前
面壁智能 OpenBMB 推出 MathForm,面向 Lean 4 数学自动形式化的开源框架、数据集与模型
前端
zyf1044162 小时前
暑期实践日志 Day33:完成全部字幕添加,工作基本收尾
学习·计算机网络·剪辑·暑期实践·课题任务
NeilCarmack2 小时前
Deepseek-harness增加桌面版端序列:第 2 讲 · spawn Electron:当前进程如何“交棒“
前端·javascript·electron
@Mike@2 小时前
09-数据库学习笔记(数据库索引与过滤器)
数据库·笔记
一米阳光86612 小时前
软考(中级)软件设计师核心笔记(9)算法——背包问题
笔记·算法·职场发展·软考·软件设计师·中级职称