Vue доступ к директивам on и class из директивы

Я хочу сгруппировать несколько директив в пользовательскую директиву, такую ​​как model:

const model = Vue.directive('model')

Vue.directive('custom', {
    bind(el, binding, vnode, oldVnode) {
        // do custom directive stuff
        // modify binding for model

        if (model.bind)
            model.bind(el, binding, vnode, oldVnode)
    },
    inserted(el, binding, vnode, oldVnode) {
        if (model.inserted)
            model.inserted(el, binding, vnode, oldVnode)
    },
    update(el, binding, vnode, oldVnode) {
        if (model.update)
            model.update(el, binding, vnode, oldVnode)
    },
    componentUpdated(el, binding, vnode, oldVnode) {
        if (model.componentUpdated)
            model.componentUpdated(el, binding, vnode, oldVnode)
    },
    unbind(el, binding, vnode, oldVnode) {
        if (model.unbind)
            model.unbind(el, binding, vnode, oldVnode)
    }
})

Но к сожалению только model а также show доступны через Vue.directive и не on или же class, Насколько я могу судить, другие директивы как-то исправлены и недоступны для меня.

Я нахожусь в среде webpack и хотел бы знать, есть ли способ получить доступ к другим директивам. Даже если это взломано.

Спасибо

0 ответов

Вы можете получить доступ и изменить class элемента, использующего

el.className += ' myClass'

Если вам просто нужно увидеть на нем классы, используйте el.classList

Чтобы увидеть все параметры, доступные для элемента, просто console.log({el}), вы получите варианты on также...

Примечание . Пробел перед myClass обязателен. Что до того, почему, английский язык делают сами..

Другие вопросы по тегам