const app = createApp(App);
const loadingDirective = {
mounted(el, binding) {
const tip = el.getAttribute('loading-tip');
const background = el.getAttribute('loading-background');
const size = el.getAttribute('loading-size');
const fullscreen = !!binding.modifiers.fullscreen;
const instance = createLoading(
{
tip,
background,
size: size || 'large',
loading: !!binding.value,
absolute: !fullscreen,
},
fullscreen ? document.body : el
);
el.instance = instance;
},
updated(el, binding) {
const instance = el.instance;
if (!instance) return;
instance.setTip(el.getAttribute('loading-tip'));
if (binding.oldValue !== binding.value) {
if (binding.oldValue !== binding.value) {
instance.setLoading?.(binding.value && !instance.loading);
}
}
},
unmounted(el) {
el?.instance?.close();
},
};
app.directive('loading', loadingDirective);
vue3注册全局自定义指令
原创liuhao951866 博主文章分类:常用代码片段 ©著作权
文章标签 vue.js javascript elementui 文章分类 Java 后端开发
上一篇:js格式化时间间隔--刚刚-xx分钟前--xx小时前
下一篇:vue3定义全局混入
-
Vue3 全局注册组件和指令
Vue3 全局注册组件和指令
全局注册指令 全局注册组件 vue -
Vue3 自定义ref(customRef)
Vue3 自定义ref(customRef)
Vue customRef 自定义ref -
Vue3自定义全局指令
自定义的指令功能:根据传参判断是否显隐功能按钮。判断方法自己去实现,这里就不贴代码了。
vue.js App 自定义 -
vue3 基础-自定义指令 directive
自定义指令 v-xxx 的 directive
mounted updated vue基础 生命周期函数 directive -
Vue3自定义指令基本使用(1)
Vue3的高级部分,自定义指令,分为局部定义和全局定义,Componistion API语法和options API语法
vue.js 前端 javascript 自定义指令 App