UNPKG

arco-crud-plus

Version:

基于arco-design-vue的配置化表格表单组件

2 lines (1 loc) 3.23 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),C=require("../table/main.vue.js"),r=require("../utils/validate.js"),_=require("../utils/form.js"),g={class:"table-edit"},D={key:1},S={key:0},V={key:2},E={key:1},N={key:0},O={key:0,class:"table-edit-slot"},$=e.defineComponent({name:"aTableEdit",__name:"main",props:{option:{type:Object,default:()=>({})},data:{type:Array,default:()=>[]},default:{type:Object},isDisabled:{type:Object,default:()=>()=>!1},isDelBtn:{type:Object,default:()=>()=>!0}},emits:["onAdd","onDel"],setup(d,{expose:f,emit:m}){const u=e.useSlots(),p=m,l=d,s=e.computed({get(){return l.option.search=!1,l.option.page=!1,l.option.tool=!1,l.option},set(o){return!0}});function k(o,i){l.data.splice(i,1),p("onDel",{record:o,index:i})}function y(){l.data.push(r.validataNull(l.default)?{}:r.deepCopy(l.default)),p("onAdd")}function v(o){l.data.splice(o,1)}function B(o){l.data.push(r.deepCopy(o))}return f({add:B,del:v}),(o,i)=>{const b=e.resolveComponent("a-button"),h=e.resolveComponent("a-popconfirm");return e.openBlock(),e.createElementBlock("div",g,[e.createVNode(C.default,{option:s.value,data:d.data},e.createSlots({menu:e.withCtx(({column:t,record:n,rowIndex:a,size:c})=>[e.unref(u).menu?e.renderSlot(o.$slots,"menu",{key:0,record:n,rowIndex:a,size:c},void 0,!0):(e.openBlock(),e.createElementBlock("div",D,[e.unref(u).menuLeft?(e.openBlock(),e.createElementBlock("span",S,[e.renderSlot(o.$slots,"menuLeft",{record:n,rowIndex:a,size:c},void 0,!0)])):e.createCommentVNode("",!0),d.isDelBtn(n,a)?(e.openBlock(),e.createBlock(h,{key:1,content:s.value.delConfirm||"确认删除?",type:"error",onOk:j=>k(n,a)},{default:e.withCtx(()=>[e.createVNode(b,{type:"text",size:"mini",status:"danger"},{default:e.withCtx(()=>i[0]||(i[0]=[e.createTextVNode("删除")])),_:1})]),_:2},1032,["content","onOk"])):e.createCommentVNode("",!0),e.unref(u).menuRight?(e.openBlock(),e.createElementBlock("span",V,[e.renderSlot(o.$slots,"menuRight",{record:n,rowIndex:a,size:c},void 0,!0)])):e.createCommentVNode("",!0)]))]),_:2},[e.renderList(s.value.columns,t=>({name:t.field,fn:e.withCtx(({record:n,rowIndex:a})=>[e.unref(u)[t.field]?e.renderSlot(o.$slots,t.field,{key:0,item:t,column:t,record:n,disabled:s.value.detail??t.disabled??d.isDisabled(n,a)??!1,rowIndex:a,size:s.value.size??"small"},void 0,!0):(e.openBlock(),e.createElementBlock("span",E,[e.unref(r.validataNull)(t.type)?(e.openBlock(),e.createElementBlock("span",N,e.toDisplayString(n[t.field]),1)):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.component?t.component:`a-${t.type||"input"}`),e.mergeProps({key:1,style:{width:t.type==="switch"?"":"100%"},size:s.value.size??"medium",disabled:s.value.detail??t.disabled??d.isDisabled(n,a)??!1,modelValue:n[t.field],"onUpdate:modelValue":c=>n[t.field]=c},e.unref(_.getComponentBindProps)([],t)),null,16,["style","size","disabled","modelValue","onUpdate:modelValue"]))]))])}))]),1032,["option","data"]),e.unref(u).add?(e.openBlock(),e.createElementBlock("div",O,[e.renderSlot(o.$slots,"add",{},void 0,!0)])):(e.openBlock(),e.createElementBlock("div",{key:1,class:"table-edit-add",onClick:y},"+增加"))])}}});exports.default=$;