Files
qhmes/web-dist/js/JAddInput-DQ2QLVhU.js
2026-06-16 18:19:57 +08:00

2 lines
1.9 KiB
Java

import{aD as g,as as f,w as h,au as O,aG as _}from"./index-X7Y8jykP.js";import{M as I}from"./MinusCircleOutlined-mDqJKkqP.js";import{e as k,w,b as N,K as d,C as r,z as i,Q as x,F as y,D as E,f as p,y as J,H as V,A as $,E as j}from"./vue-vendor-DNhG1Cve.js";import"./emoji-mart-vue-fast-R0uJEDq-.js";const B=k({name:"JAddInput",props:{value:f.string.def(""),min:f.integer.def(1)},emits:["change","update:value"],setup(a,{emit:s}){const t=N({params:[]}),c=e=>{let n=t.params.indexOf(e);n!==-1&&t.params.splice(n,1),l()},m=()=>{t.params.push({label:"",value:""}),l()};w(()=>{v()});function v(){if(t.params=[],a.value&&a.value.indexOf("{")==0){let e=JSON.parse(a.value);Object.keys(e).forEach(n=>{t.params.push({label:n,value:e[n]})})}}function l(){let e={};t.params.length>0&&t.params.forEach(n=>{e[n.label]=n.value}),s("change",h(e)?"":JSON.stringify(e)),s("update:value",h(e)?"":JSON.stringify(e))}return{dynamicInput:t,emitChange:l,remove:c,add:m}},components:{MinusCircleOutlined:I,PlusOutlined:g}});function M(a,s,t,c,m,v){const l=_,e=d("MinusCircleOutlined"),n=d("PlusOutlined"),C=d("a-button");return i(),r(y,null,[(i(!0),r(y,null,E(a.dynamicInput.params,(o,b)=>(i(),r("div",{key:b,style:{display:"flex"}},[p(l,{placeholder:"请输入参数key",value:o.label,"onUpdate:value":u=>o.label=u,style:{width:"30%","margin-bottom":"5px"},onInput:a.emitChange},null,8,["value","onUpdate:value","onInput"]),p(l,{placeholder:"请输入参数value",value:o.value,"onUpdate:value":u=>o.value=u,style:{width:"30%",margin:"0 0 5px 5px"},onInput:a.emitChange},null,8,["value","onUpdate:value","onInput"]),a.dynamicInput.params.length>a.min?(i(),J(e,{key:0,class:"dynamic-delete-button",onClick:u=>a.remove(o),style:{width:"50px"}},null,8,["onClick"])):V("",!0)]))),128)),x("div",null,[p(C,{type:"dashed",style:{width:"60%"},onClick:a.add},{default:$(()=>[p(n),s[0]||(s[0]=j(" 新增 ",-1))]),_:1},8,["onClick"])])],64)}const D=O(B,[["render",M],["__scopeId","data-v-7688edbe"]]);export{D as default};