黑豹程序员-vue3 setup 子组件给父组件传值

工作原理

在子组件中调用emit方法触发父组件的方法实现传值

父组件 p.vue

bash 复制代码
<template>
  <div>
    <ChildComponent @childValue="handleChildValue"></ChildComponent>
    <button @click="getChildValue">获取子组件的值</button>
    {{receivedChildValue}}
  </div>
</template>

<script setup>
import { ref } from 'vue';
import ChildComponent from './child.vue';

const receivedChildValue = ref('');

const handleChildValue = (value) => {
  receivedChildValue.value = value;
};

const getChildValue = () => {
  console.log('Child Value:', receivedChildValue.value);
};
</script>

子组件:child.vue

bash 复制代码
<template>
  <div>
    <p>子组件的值: {{ childValue }}</p>
  </div>
</template>

<script setup>
import { ref, getCurrentInstance } from 'vue';

const childValue = ref('czs');
const instance = getCurrentInstance();

//子组件发生值给父组件,通过childValue事件触发
instance.emit('childValue', childValue.value);

</script>
相关推荐
Lkstar5 分钟前
逐步搞懂 Vue 的 patchChildren,把 Diff 算法拆给你看
vue.js
Jenlybein8 分钟前
速学 VS Code 插件开发入门,客制化你的开发体验
前端·javascript·visual studio code
ZC跨境爬虫1 小时前
UI前端美化技能提升日志day7:(原生苹方字体全局适配+合规页脚完整像素级落地)
前端·javascript·ui·html·交互
好运的阿财1 小时前
OpenClaw工具拆解之tts+web_search
前端·javascript·python·ai·ai编程·openclaw·openclaw工具
whinc2 小时前
Node.js技术周刊 2026年第17周
前端·javascript
nbsaas-boot2 小时前
100万门店级分货系统架构设计
前端·javascript·vue.js
l1t2 小时前
DeepSeek v4辅助生成的单文件SQL查询示例页面
javascript·数据库·sql
笋笋~3 小时前
el-tree 拖拽事件隔离:实现句柄独立控制,区域分离
javascript·vue.js·elementui
前端那点事3 小时前
Vue生命周期速查:Vue2+Vue3钩子全解析,新手也能秒懂
前端·vue.js
Aotman_4 小时前
Element UI 表格搜索高亮
前端·javascript·vue.js·ui·elementui