父组件触发子组件事件
时间: 2024-01-26 17:14:06 浏览: 124
父组件触发子组件事件的方法有两种:
方法一:子组件监听父组件发送的方法
在子组件中,使用`$on`方法监听父组件发送的事件,并在回调函数中执行相应的操作。
```javascript
// 子组件
export default {
mounted: function () {
this.$nextTick(function () {
this.$on('childMethod', function () {
console.log('监听成功')
// 执行子组件的操作
})
})
}
}
```
在父组件中,通过`$emit`方法触发子组件的事件。
```javascript
// 父组件
<template>
<div>
<button @click="triggerChildMethod">触发子组件事件</button>
</div>
</template>
<script>
export default {
methods: {
triggerChildMethod() {
this.$emit('childMethod')
}
}
}
</script>
```
方法二:父组件调用子组件方法
在子组件中,定义一个方法,并在该方法中执行子组件的操作。
```javascript
// 子组件
export default {
methods: {
callMethod() {
console.log('调用成功')
// 执行子组件的操作
}
}
}
```
在父组件中,通过`ref`属性获取子组件的实例,并直接调用子组件的方法。
```javascript
// 父组件
<template>
<div>
<button @click="triggerChildMethod">触发子组件事件</button>
</div>
</template>
<script>
export default {
methods: {
triggerChildMethod() {
this.$refs.childComponent.callMethod()
}
}
}
</script>
```
阅读全文