vue 自定义指令

1.全局注册
Vue.directive('focus',{
inserted:function(el){
el.focus() //自动获取焦点
}
})
2.局部注册
var app = new Vue({
el:"#app",
directives:{
focus:{}
}
})
3.自定义指令的几个钩子函数
bind:只调用一次,定义一个绑定时执行一次的初始化动作
inserted:被绑定元素插入父节点时调用
update:被绑定元素所在的模版更新时调用
componentUpdate:被绑定元素所在模版完成一次更新周期时调用
unbind:只调用一次,指令与元素解绑时调用

/**
 * @fileoverview 自动隐藏滚动条
 */
/* eslint-disable */
const showScroll = {
    bind(el, { expression }) {
        if (expression === false || expression === 'false') {
            el.style.overflow = 'hidden';
        }
        el && el.classList.add('auto-hide-scroll')
    }, update(el, { expression }) {
        if (expression === false || expression === 'false') {
            el.style.overflow = 'hidden';
        }
        el && el.classList.add('auto-hide-scroll')
    }, destroy(el) {
        el && el.classList.remove('auto-hide-scroll')
    }
};

export default showScroll;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容