Я пытаюсь вызвать событие $ emit из дочернего компонента в Vue, чтобы вызвать функцию в App.vue.Событие запускается в соответствии с инспектором Vue, а инспектор DOM показывает, что DIV настроен на запуск события, но ничего не происходит.
Я попытался переименовать событие, убедившись, что функции работают с событием щелчка, привязываются к различным компонентам и элементам div и не включают полезную нагрузку с событием.Ничто не похоже на работу.Я пробовал и Firefox, и Chrome, и оба заканчиваются одним и тем же результатом: Вызванное событие, в котором ничего не происходит.
Дочерний компонент и метод
<div class="navbutton" v-on:click="clicked(data.id)">
<p>{{data.text}}</p>
</div>
clicked(id){
switch(id){
case 1:
alert("One");
break;
case 2:
this.$emit('testemit');
break;
case 3:
alert("Three");
break;
case 4:
alert("Four");
break;
default:
alert("DEFAULT");
break;
}
}
Из App.vue
<div v-on:testemit="EmitFunction"></div>
EmitFunction() {
alert('MESSAGE');
}
Я ожидаю, что при нажатии на вторую кнопку появится сообщение «СООБЩЕНИЕ», однако ничего не происходит.Три другие кнопки (1, 3 и 4) работают правильно.