Шина события Vue вызывает проблему - PullRequest
0 голосов
/ 14 февраля 2019

Я столкнулся со странной проблемой, с которой было бы интересно разобраться.Я узнал о «шине событий», вы создаете еще один экземпляр Vue, в который вы можете отправлять события.Поэтому я создал его в app.js:

export const bus = new Vue();

Я даже не начал использовать это, но я импортировал его в один из моих компонентов (который импортируется в проект как Vue.component('events-view', require('./components/Events/View.vue'));

В этом компоненте я только что импортировал шину:

import { bus } from '@/app'

В результате импорта совершенно другая страница не загружала свои данные. У него были проблемы с выбором даты(vue-bootstrap-datetimepicker), который перестал работать. Я закомментировал средство выбора даты, но исходные данные не были бы установлены на формах, никаких других ошибок не показывалось. Но в vue-devtools я мог видеть только "root"элемент, я не смог осмотреть дочерний компонент. Представление представляет собой шаблон лезвия laravel, который загружает компонент vue (импортированный в проект как Vue.component('events-edit', require('./components/Events/Edit.vue')); ). Нет ссылки на другой компонент, который загружает шину.

Я узнал о проблеме, проверив git diffs и вернувшись к тому, когда что-то работало, а затем добавил кусочки кода, пока не появилась ошибка - и тогда я добавил импортер.t автобуса (кажется, больше ничего не вызывает проблемы).

Я не полагаюсь на шину, поэтому могу удалить ее, но мне все еще интересно знать, почему это происходит?

...