我正在学习Vuejs event handling
.
我认为开发人员可以使用this.$on('event', handler)
injs
文件来处理'event'
.
有一个例子。
<div id="mainapp" v-on:event="processEventFromView">
<button type="button" v-on:click="emitEvent">
Emit Event
</button>
</div>
.js 文件
var app = new Vue({
el:"#mainapp",
data:{
show:false
},
created:function(){
this.$on('event', this.processEvent);
},
methods:{
emitEvent:function(){
this.$emit('event', {data:'mydata'});
},
processEvent(data){
console.log('js', data); //this is fired when clicking the button.
},
processEventFromView(data){
console.log('view', data); //this is not fired whenever.
}
}
})
但是在示例中,只有在单击按钮时才会触发processEvent
附加的处理程序。vs 和this.$on()
有什么不一样?
为什么不随时调用?
我可以将 附加到带有引用的按钮事件,而不是?
请帮助我我错了什么。v-on
this.$on
v-on:event="processEventFromView"
event handler
click
ref
v-on:click="emitEvent"