tav-ui
Version:
39 lines (36 loc) • 1.2 kB
JavaScript
import { createLoading } from '../../components/loading/src/createLoading2.mjs';
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: tip || "\u6B63\u5728\u52A0\u8F7D\u9875\u9762 \u{1F609}",
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();
}
};
function setupLoadingDirective(app) {
app.directive("loading", LoadingDirective);
}
export { LoadingDirective as default, setupLoadingDirective };
//# sourceMappingURL=loading2.mjs.map