UNPKG

quick-admin-vue3-core

Version:

以快(计算机执行效率、开发效率)为核心的后台管理系统开发模板

2 lines (1 loc) 2.29 kB
"use strict";const e=require("vue"),h=require("./index-BC11nvhb.cjs"),f=require("./platform-Dl0zaSyI.cjs"),w=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),R={class:"footer-btns f-c-c f-0 pt-h pb-h"},S=e.defineComponent({__name:"FooterBtns",props:{loading:{type:Boolean},submitBtn:{default:"提交"},resetBtn:{default:"重置"},moreBtns:{default:()=>[]},omits:{type:[Boolean,Array],default:!0},log:{type:[Boolean,String]},debug:{type:Boolean},params:{},formRef:{},fetch:{},afterSuccess:{},afterFail:{},afterReset:{}},emits:["moreBtns","submit"],setup(y,{expose:F,emit:x}){const r=y,d=x,p=e.ref(r.loading),k=h.getFootBtnAttrs(r.submitBtn,"submit"),g=h.getFootBtnAttrs(r.resetBtn,"reset");e.watch(()=>r.loading,t=>{p.value=t});const C=e.computed(()=>r.moreBtns.map(t=>h.getBtnObj(t)));function b(){const{log:t,debug:c,omits:n}=r;return new Promise((s,l)=>{let{params:o}=r;const{formRef:a}=r;a&&a.validate((i,u)=>{if(i){if(o=f.splitPropsParams(o),o=f.omitAttrs(o,n),(t||c)&&(f.printLog(o,"req",t),c))return;s(o)}else{const m=Object.values(u)[0][0];f.showMessage(m.message,"error"),l(m)}})})}function _(...t){const[c,n,s,l]=t;b().then(o=>{const{fetch:a,log:i,afterSuccess:u,afterFail:m}=r;if(!a)return d("submit",o,s,l);p.value=!0,a(o).then(B=>{if(i&&f.printLog(B,"res",i),!u)return s();u(B,s)}).catch(B=>m==null?void 0:m(B)).finally(()=>{p.value=!1})})}function v(...t){const{formRef:c,afterReset:n}=r;c.resetFields(),n==null||n(...t)}function q(...t){const[c,n,s,l]=t,{name:o,validateForm:a,to:i}=n;if(!i){if(!a)return d("moreBtns",o,r.params,s,l);b().then(u=>{d("moreBtns",o,u,s,l)}).catch(()=>{})}}return F({validate:b,submit:_,reset:v}),(t,c)=>{const n=e.resolveComponent("BaseBtn");return e.openBlock(),e.createElementBlock("div",R,[e.unref(k)?(e.openBlock(),e.createBlock(n,{key:0,tpl:e.unref(k),loading:e.unref(p),onClick:_},null,8,["tpl","loading"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(C),(s,l)=>(e.openBlock(),e.createBlock(n,{onClick:q,tpl:s,key:l},null,8,["tpl"]))),128)),e.unref(g)?(e.openBlock(),e.createBlock(n,e.mergeProps({key:1},e.unref(g).attrs,{tpl:e.unref(g).name,onClick:v}),null,16,["tpl"])):e.createCommentVNode("",!0)])}}}),j=w._export_sfc(S,[["__scopeId","data-v-982326ab"]]);exports.FooterBtns=j;