一 .Vue3 组件通讯 -- 子传父 方法流程
1. 首先子组件通过 defineEmit 写入传递事件名 并 定义变量名
const 变量名one = defineEmit([' 传递事件名'])
2. 子组件通过 defineEmit 定义的变量名 触发触发事件 并 传递数据 逗号后面是参数
const 变量名two = ( ) => { 变量名one('传递事件名',参数1,参数2 ) }
3.父组件接收传递来的变量名 并 提供方法
<子组件 @传递事件名="方法名"> </子组件>
4. 使用标签内定义 方法 并 定义参数 接收子组件传参
const 变量名three = (参数名) => { console.log(参数名) }
步骤总结:
- 子组件通过defineEmit获取emit对象
- 子组件通过emit触发事件 并传递数据
- 父组件提供方法
- 父组件通过自定义事件的方式给子组件注册事件