@fmdevui/fm-dev
Version:
Page level components developed based on Element Plus.
41 lines (38 loc) • 1.16 kB
JavaScript
import { nextTick } from 'vue';
const NextLoading = {
// 创建 loading
start: () => {
const bodys = document.body;
const div = document.createElement("div");
div.setAttribute("class", "loading-next");
const htmls = `
<div class="loading-next-box">
<div class="loading-next-box-warp">
<div class="loading-next-box-item"></div>
<div class="loading-next-box-item"></div>
<div class="loading-next-box-item"></div>
<div class="loading-next-box-item"></div>
<div class="loading-next-box-item"></div>
<div class="loading-next-box-item"></div>
<div class="loading-next-box-item"></div>
<div class="loading-next-box-item"></div>
<div class="loading-next-box-item"></div>
</div>
</div>
`;
div.innerHTML = htmls;
bodys.insertBefore(div, bodys.childNodes[0]);
window.nextLoading = true;
},
// 移除 loading
done: (time = 0) => {
nextTick(() => {
setTimeout(() => {
window.nextLoading = false;
const el = document.querySelector(".loading-next");
el?.parentNode?.removeChild(el);
}, time);
});
}
};
export { NextLoading };