Расширить слушателей событий в vuejs - PullRequest
0 голосов
/ 12 июня 2018

В настоящее время я работаю над проектом, который использует VueJS.В этом проекте много миксов и компонентов, и в HTML @click определяется во многих местах.

Можно ли получить список узлов DOM, к которым прикреплены эти списки событий?Или расширить функциональность слушателя основного события, чтобы я мог добавить к нему дополнительную логику?Я искал ответ в течение нескольких часов, но все еще не смог найти ничего полезного.

Спасибо!

1 Ответ

0 голосов
/ 13 июня 2018

Я просто хотел сообщить вам, что после многих отладок я нашел способ определить, к каким элементам прикреплено событие @click.Для тех, кто еще хочет знать:

function loopThroughVueNodeChildren(children) {
    children.forEach(vnode => {
        // Is an @click attached to this element?
        if (vnode.data && typeof vnode.data.on !== 'undefined' && typeof vnode.data.on.click === 'function') {
            console.log('This element has an @click event! I can do whatever i need to do in here :)');
        }

        if (vnode.children) {
            this.addEventListenerOnVueNodes(vnode.children);
        }
    })
},


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