GasWell-front/node_modules/element-plus/es/hooks/use-intermediate-render/index.mjs

44 lines
1019 B
JavaScript

import { watch, unref, nextTick } from 'vue';
const useDelayedRender = ({
indicator,
intermediateIndicator,
shouldSetIntermediate = () => true,
beforeShow,
afterShow,
afterHide,
beforeHide
}) => {
watch(() => unref(indicator), (val) => {
if (val) {
beforeShow == null ? void 0 : beforeShow();
nextTick(() => {
if (!unref(indicator))
return;
if (shouldSetIntermediate("show")) {
intermediateIndicator.value = true;
}
});
} else {
beforeHide == null ? void 0 : beforeHide();
nextTick(() => {
if (unref(indicator))
return;
if (shouldSetIntermediate("hide")) {
intermediateIndicator.value = false;
}
});
}
});
watch(() => intermediateIndicator.value, (val) => {
if (val) {
afterShow == null ? void 0 : afterShow();
} else {
afterHide == null ? void 0 : afterHide();
}
});
};
export { useDelayedRender };
//# sourceMappingURL=index.mjs.map