Многие люди используют шаблон Global Event Bus в Vue:
https://alligator.io/vuejs/global-event-bus/
Пример этой страницы, которая устанавливает прослушиватель событий, имеет следующий пример:
EventBus.$on('i-got-clicked', clickCount => {
console.log(`Oh, that's nice. It's gotten ${clickCount} clicks! :)`)
});
Это событие можно настроить до того, как шаблон DOM завершит рендеринг для этого конкретного компонента.Если вы подождете здесь, пока шаблон DOM не закончится, вы можете пропустить щелчок.Вы просто хотите сделать это как можно скорее.
Так же, как когда ваш компонент запускает AJAX-запрос, вам не всегда нужно ждать, пока DOM завершит рендеринг вашего компонента.Много раз вы можете отправить запрос сразу.Так почему бы вам не захотеть сбрить время и сразу же запустить запрос AJAX?
Все, что находится в вашем mounted
хуке и не нуждается в DOM, может быть перемещено в created
перехват, поэтому он будет выполняться быстрее в вашем жизненном цикле Vue.