httpvueloader все дети смонтированы - PullRequest
0 голосов
/ 27 сентября 2018

У меня есть родительский компонент, который загружает другие дочерние компоненты через httpvueloader.Проблема, с которой я сейчас сталкиваюсь, заключается в том, что с httpvueloader нормальный порядок перехватов жизненного цикла больше не действует.При регистрации созданных и смонтированных событий как в моем родительском, так и в моем дочернем компонентах я вижу, что сначала создается и монтируется родительский компонент, а затем создается и монтируется дочерний компонент.Я предполагаю, что это связано с httpvueloader, и я думаю, что могу обойти это.Однако для этого мне нужен способ узнать, когда монтируются все дочерние компоненты.Я пытался добиться этого с помощью таких событий:
в родительском:

created: function(){
    this.$on('childMounted', function(){
        console.log("child mounted"); 
    })
},

и в дочернем:

mounted: function() {
    this.$emit('childMounted');
}.

Однако, похоже, это тоже не работает, потому что родительникогда не получает событие childMounting.Что мне здесь не хватает?

ОБНОВЛЕНИЕ: после небольшого дополнительного исследования я понял это.Во-первых, this.$on() работает только для событий из того же компонента, так что это было неправильно.Однако я должен прослушать событие, зарегистрировав прослушиватель в шаблоне, например, <childComponent @child-mounted="foo()"></childComponent> (переименовал событие, потому что атрибуты HTML нечувствительны к регистру, и вы не можете использовать v-on для прослушивания событий camelCase при использовании в-DOM шаблоны).Что мне помогло, так это нить и, более конкретно, эта скрипка .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...