У меня есть экземпляр vue, установленный как глобальная переменная todoEventBus.
Когда создается мой компонент, я запускаю $ on для запуска оповещения при отправке события под названием «множественное число».
У моего компонента есть кнопка, которая запускает это множественное событие.
Вот код:
<template>
<div class="todo-item">
<!--// -->
<button @click="pluralise">Plural</button>
</div>
</template>
<script>
export default {
name: "todo-item",
props: {
// props
todo: {
type: Object,
required: true,
},
},
data() {
// data
'title': this.todo.title,
},
created() {
todoEventBus.$on('pluralise', alert());
},
methods: {
pluralise() {
todoEventBus.$emit('pluralise.')
},
handlePluralise() {
this.title = this.title + 's';
}
},
}
</script>
Когда я нажимаю кнопку множественного числа, я вижу, что генерируется следующее событие:
name:"pluralise."
type:"$emit"
source:"<Root>"
payload:Array[0]
Но не сработало оповещение, поэтому todoEventBus. $ On не получает событие.