Я узнаю о Vuejs event handling
.
Я думаю, что разработчик мог бы использовать this.$on('event', handler)
в js
файле для обработки 'event'
.
Есть пример .
<div id="mainapp" v-on:event="processEventFromView">
<button type="button" v-on:click="emitEvent">
Emit Event
</button>
</div>
js File
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
, прикрепленный this.$on()
.,В чем разница между v-on
против this.$on
?
Почему v-on:event="processEventFromView"
никогда не вызывается?
Могу ли я присоединить event handler
к событию click
кнопки со ссылкой, ref
вместо v-on:click="emitEvent"
?
Пожалуйста, помогите мне в чем я не прав.