2 lines
1.5 KiB
JavaScript
2 lines
1.5 KiB
JavaScript
import{E as e}from"./index-19bade01.js";import{bt as t}from"./index-98eefc51.js";import{x as s,m as n,u as a,b2 as o,n as r,aw as c,ak as i,t as l}from"./runtime-core.esm-bundler-1857aef3.js";const u={lock:!0,text:"加载中..."},m=(t,s={})=>{let n;const a=()=>{n&&n.close()},o={...u,...s};return(...s)=>{try{r=o,n=e.service(r);const c=t(...s);return c instanceof Promise?c.then((e=>e)).catch((e=>{throw e})).finally((()=>{a()})):(a(),Promise.resolve(c))}catch(c){throw a(),c}var r}},d={code:0,data:{},message:"获取成功"};function f(){return new Promise((e=>{setTimeout((()=>{e(d)}),1e3)}))}function h(){return new Promise(((e,t)=>{setTimeout((()=>{t(new Error("发生错误"))}),1e3)}))}const g={class:"app-container"},p=r("h4",null,"该示例是演示:通过将要执行的函数传递给 hook,让 hook 自动开启全屏 loading,函数执行结束后自动关闭 loading",-1),w=s({__name:"use-fullscreen-loading",setup(e){const s={text:"即将发生错误...",background:"#F56C6C20",svg:'\n <path class="path" d="\n M 30 15\n L 28 17\n M 25.61 25.61\n A 15 15, 0, 0, 1, 15 30\n A 15 15, 0, 1, 1, 27.99 7.5\n L 15 15\n " style="stroke-width: 4px; fill: rgba(0, 0, 0, 0)"/>\n',svgViewBox:"-10, -10, 50, 50"},r=async()=>{const e=await m(f)();t.success(e.message)},u=async()=>{try{await m(h,s)()}catch(e){t.error(e.message)}};return(e,t)=>{const s=c("el-button");return i(),n("div",g,[p,a(s,{onClick:r},{default:o((()=>[l("查询成功")])),_:1}),a(s,{onClick:u},{default:o((()=>[l("查询失败")])),_:1})])}}});export{w as default};
|