<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<div id="app">
<child1-component @call="onCall"></child1-component>
</div>
<script src="./vue.js"></script>
<script>
const app = new Vue({
el: '#app',
data: {
name: '苑文浩',
},
methods: {
// 事件的处理函数,可以用来接收子组件通过 $emit() 方法传入的数据
onCall(childMsg) {
console.log(childMsg)
}
},
components: {
'child1-component': {
data() {
return {
child1Message: 'child1组件的数据'
}
},
methods: {
send() {
// 使用 $emit() 方法手动触发当前组件上注册的自定义事件,并给事件的处理函数传递数据
this.$emit('call', this.child1Message)
// $emit() 方法类似于 jQuery 中的 trigger(),可以用来手动触发事件
}
},
template: `<div><button type="button" @click="send">为父组件传递数据</button></div>`
}
}
});
// props properties 属性
// ref reference 引用
</script>
</body>
</html>
-组件通信-子组件为父组件传递数据-使用自定义事件
猜你喜欢
转载自blog.csdn.net/qq_45802159/article/details/103818305
今日推荐
周排行