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;