<template>
<div>
<child-component :message="parentMessage" @custom-event="handleCustomEvent"></child-component>
</div>
</template>
<script>
export default {
data() {
return {
parentMessage: 'Hello from parent'
};
},
methods: {
handleCustomEvent(payload) {
console.log('Custom event triggered with payload:', payload);
}
}
};
</script>
<!-- ChildComponent.vue -->
<template>
<div>
<p>{{ message }}</p>
<button @click="triggerCustomEvent">Trigger Custom Event</button>
</div>
</template>
<script>
export default {
props: {
message: {
type: String,
required: true
}
},
methods: {
triggerCustomEvent() {
this.$emit('custom-event', { data: 'Some data' });
}
}
};
</script>
父组件传递 prop
给子组件:
:message="parentMessage"
将 parentMessage
的值传递给子组件的 message
属性。props
接收这个属性,并在模板中使用。子组件触发自定义事件:
$emit
触发一个名为 custom-event
的自定义事件,并传递一个对象作为事件的负载(payload)。@custom-event="handleCustomEvent"
监听这个事件,并在事件触发时调用 handleCustomEvent
方法处理。数据流动:
prop
),而事件则是从子组件流向父组件(通过 $emit
)。上一篇:vue 日历
下一篇:vue2项目创建
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站