플래시 이벤트를 콘솔에서 방출하는 사용자 지정 구성 요소에서 수신 할 수 없습니다. 내가 함께 이벤트를 발사하고있는 크롬 콘솔구성 요소에서 이벤트를 수신하는 vuejs
/* file flash.vue */
<template>
<span :class="type" class="alert flash-alert" v-show="show">
{{ body }}
</span>
</template>
<script>
export default {
props: ['type','message'],
data() {
return {
body: this.message,
show: false,
};
},
created() {
if(this.body)
{
this.showComp();
this.hide();
}
},
methods: {
showComp: function(){
this.show = true;
},
hide: function()
{
var vm = this;
setTimeout(function() {
vm.show = false;
},2000);
},
},
events: {
flash: function(newMessage) {
this.body = newMessage;
this.showComp();
},
}
}
: 여기 내 구성 요소입니다 내가 VUE에 그것을 볼 수있는 이벤트가 발사됩니다
/* from console */
window.vueEventBus = new Vue();
window.vueEventBus.$emit('flash','my message');
탭을 DevTools로. 그러나 이벤트를 포착 할 때 구성 요소가 표시되어야합니다.
그러나 글로벌 이벤트 버스에서 청취자를 created() 메소드 내부에 피기 백하면 작동합니다.
created() {
window.vueMessageBus.$on('flash',newMessage => {
this.body = newMessage;
this.showComp();
});
}
내가 이벤트 리스너가 이벤트 내부의 구성 요소 자체의 속성을 등록하려면 어떻게해야합니까?
고마워요
, Yeasir
같은 것은이 뷰 2 – Bert
의'events' 속성으로 없다 그러나 vue1 하나가 있었다 권리? vue2를 사용하여 vue를 배우기 시작했으며, vue1의 예제를 사용하기 시작했습니다. parent 및 child 컴포넌트 모두에서 이벤트 객체를 보았을 것입니다. 대부분의 예제에서 –