$on $emit的用法
时间: 2023-10-30 21:58:22 浏览: 167
Vuejs 用$emit与$on来进行兄弟组件之间的数据传输通信
`$on`和`$emit`是Vue.js框架中用于在组件之间进行通信的两个方法。
`$on`用于在当前组件中监听指定事件。它的语法是:`this.$on(eventName, callback)`,其中`eventName`是要监听的事件名,`callback`是事件触发时执行的回调函数。
示例代码:
```javascript
// 在父组件中监听子组件触发的事件
this.$on('childEvent', (payload) => {
console.log('Received payload:', payload);
});
```
`$emit`用于触发指定事件并向其他组件传递数据。它的语法是:`this.$emit(eventName, payload)`,其中`eventName`是要触发的事件名,`payload`是要传递给其他组件的数据。
示例代码:
```javascript
// 在子组件中触发事件并传递数据给父组件
this.$emit('childEvent', { message: 'Hello from child component' });
```
通过使用`$on`和`$emit`,可以实现组件之间的通信,使得它们能够相互发送和接收数据。
阅读全文