methods与mounted中$on
时间: 2024-03-23 15:37:41 浏览: 51
vue中的$emit 与$on父子组件与兄弟组件的之间通信方式
在Vue.js中,methods是一个对象,可以包含多个方法。mounted是Vue实例的一个钩子函数,会在Vue实例挂载到DOM元素后调用,可以用来执行一些初始化操作。$on是Vue实例的一个方法,用于监听自定义事件。当事件被触发时,$on方法会执行回调函数。如果想在Vue实例中监听某个自定义事件,并在事件发生时执行某个方法,可以将该方法定义在methods对象中,然后在mounted钩子函数中使用$on方法监听该事件,如下所示:
```javascript
// 定义一个Vue实例
new Vue({
el: '#app',
methods: {
myMethod() {
console.log('myMethod被调用了')
}
},
mounted() {
// 监听自定义事件
this.$on('my-event', this.myMethod)
}
})
```
在上面的代码中,我们定义了一个Vue实例,并将其挂载到id为app的DOM元素上。该实例中包含一个名为myMethod的方法。我们在实例的mounted钩子函数中使用$on方法监听了一个名为my-event的自定义事件,并在事件触发时调用了myMethod方法。这样,当my-event事件被触发时,myMethod方法就会被执行。
阅读全文