Vue2中emits用法
时间: 2024-02-01 07:17:09 浏览: 100
关于vue中 $emit的用法详解
5星 · 资源好评率100%
在Vue.js 2.x中,`emits`是组件选项之一,用于声明该组件可以发出的事件。当组件发出一个事件时,父组件可以使用`v-on`指令监听该事件并执行相应的方法。
以下是`emits`的用法示例:
```javascript
Vue.component('my-component', {
emits: ['custom-event'],
template: `
<button @click="emitCustomEvent">发出自定义事件</button>
`,
methods: {
emitCustomEvent() {
this.$emit('custom-event', '自定义事件参数');
}
}
})
new Vue({
el: '#app',
methods: {
handleCustomEvent(param) {
console.log('捕获自定义事件,参数:', param);
}
}
})
```
在上面的代码中,`emits`选项声明了该组件可以发出一个名为`custom-event`的自定义事件。组件模板中的`<button>`元素绑定了一个`click`事件,当点击按钮时,组件会调用`emitCustomEvent`方法发出`custom-event`事件,并传递一个参数。
在父组件中,可以使用`v-on`指令监听`custom-event`事件,并执行`handleCustomEvent`方法。当子组件发出`custom-event`事件时,父组件就可以捕获该事件并执行相应的操作了。
```html
<div id="app">
<my-component @custom-event="handleCustomEvent"></my-component>
</div>
```
阅读全文