vue3 子组件传值给父组件

基本思想:

1. 父组件中给子组件标签通过@绑定事件

2. 子组件内部通过$emit 方法触发事件

父组件,index.vue页面

<!-- 子组件传值给父组件 -->

<template>
    <div>
        <h1>父组件</h1>
        <ChildComponent @message-sent="handleMessage"/>
        <p>来自子组件的消息: {{ childMessage }}</p>
    </div>
</template>

<script setup>
import ChildComponent from './component/childComponent.vue'  //引入子组件
import { ref } from 'vue';

const childMessage = ref('');

const handleMessage = (message) => {
    childMessage.value = message;
}
</script>

<style scoped>
</style>

子组件 内容

<!-- childComponent.vue -->
<template>
    <div>
        <button @click="sendMessage">发送消息给子组件</button>
    </div>

</template>

<script setup>
import { defineEmits } from 'vue';
// 定义事件
const emit = defineEmits();

//方法触发事件
const sendMessage = () => {
    emit('message-sent', 'Hello from child component!');
}


</script>

<style scoped>

</style>

运行结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值