Является ли шина событий головной болью в Vue? давай я тебе помогу

внешний интерфейс JavaScript Vue.js EventBus

Нечего сказать, идите прямо к галантерейным товарам

существующие болевые точки

  • Вы просто хотите просто опубликовать событие и подписаться на него, чтобы уведомить следующий родственный компонент о выполнении метода?
  • У вас все еще есть головная боль при ручном вызове разгрузки (выключения) каждый раз после введения шины событий?
  • У вас все еще болит голова, когда вы думаете о череде названий методов [pub, sub], [$on, $emit], [fire, listen] балабалы различных автобусов?

Если вышеперечисленное — ваши болевые точки, то вы начинаете свой день с Vue. Наступают счастливые дни:

vue-event-proxy

Пусть ваш Vue поддерживает глобальные события с наименьшими затратами.С ним вам нужно добавлять только тогда, когда вам нужно делать глобальные уведомления.global:Префикс для завершения глобальной публикации событий, простой?

    this.$emit('global:你的事件名字');

Релиз есть, а что с мониторингом?

    this.$on('global:你的事件名字', () => {});

как насчет этого? Это что-то другое, кроме добавления имени событияglobal:В остальном ничего не изменилось, если вы еще не знакомы с этой частью Vue, я подготовлю ее для вас.официальная документация.

инструкции

$ npm install --save vue-event-proxy

Добавьте в основную запись вашего проекта (main.js, сгенерированный vue-cli):

  import EventProxy from 'vue-event-proxy';
  Vue.use(EventProxy);

Далее, используйте его в свое удовольствие.

Если вас интересует эта реализация,Адрес источникаСлужить.