RuleForm-OVxr3UxE.js 5.4 KB

1
  1. var f=(o,e,t)=>new Promise((u,l)=>{var d=r=>{try{s(t.next(r))}catch(a){l(a)}},i=r=>{try{s(t.throw(r))}catch(a){l(a)}},s=r=>r.done?u(r.value):Promise.resolve(r.value).then(d,i);s((t=t.apply(o,e)).next())});import{d as P,ag as C,aB as F,ar as k,aD as n,at as v,k as p,G as c}from"./vue-vendor-Be68asQ6.js";import"./index-D68l__AG.js";import{C as B}from"./index-BZ_MXCtW.js";import{u as V,a as q}from"./index-BFfnEkVs.js";import{P as y}from"./index-X83NmVMq.js";import{i as _}from"./system-CVkOpfKQ.js";import{B as A}from"./BasicForm-Cv-dsB-e.js";import{u as D}from"./useForm-kcRIHoe0.js";import"./componentMap-BUTAcOmo.js";import"./antd-vue-vendor-DcqS7Wvq.js";import"./useFormItem-CtGMPcLp.js";import"./index-CETWS1o0.js";import"./BasicModal-D4gc2R81.js";import"./useTimeout-Ca5eqGu-.js";import"./vxe-table-vendor-DHF2TRpV.js";import"./useWindowSizeFn-BTSGGcie.js";import"./download-CjoX0_mR.js";import"./base64Conver-24EVOS6V.js";import"./index-D1703ozz.js";import"./index-Bi7PIj53.js";import"./useCountdown-B7iR27pS.js";import"./useFormItemSingle-nLM0QlcI.js";import"./JSelectUser-DCwPqRxp.js";import"./props-BPxWJPuD.js";import"./JSelectBiz-Be8KsC5j.js";import"./JAddInput-BBXQvvpq.js";import"./areaDataUtil-Cik-Rc_P.js";import"./index-BOEzG86y.js";import"./index-BNFwynfr.js";import"./bem-BvvqSl-N.js";import"./props-Cw7AfxGV.js";import"./useContextMenu-BDwmjIwb.js";import"./depart.api-CDwTvdwQ.js";import"./JSelectDept-DT6g7V5M.js";import"./JPopup-DKJW27Yk.js";import"./JEllipsis-C04xKxcI.js";import"./JUpload-cB_Qj2H2.js";import"./index-iuayQczx.js";import"./index-DJQB4_Pr.js";import"./JAreaLinkage-BNOKwn5l.js";import"./JCodeEditor-CSivhUhT.js";import"./htmlmixed-DNSd26j0.js";import"./vue-DbzutmLn.js";/* empty css */import"./EasyCronInput-wCv2YMHn.js";import"./index-BIPzXG41.js";import"./index-CXEQnmRq.js";import"./useIntersectionObserver-Bl62RIZ4.js";import"./useContentHeight-DnE6GxS2.js";import"./useContentViewHeight-BVCc9jQl.js";import"./usePageContext-WlOC5VNa.js";import"./injectionKey-DPVn4AgL.js";const b=[{field:"field1",component:"Input",label:"字段1",colProps:{span:8},required:!0},{field:"field2",component:"Input",label:"字段2",colProps:{span:8},required:!0},{field:"id",label:"id",required:!0,defaultValue:0,component:"InputNumber",show:!1},{field:"field3",component:"DatePicker",label:"字段3",colProps:{span:8},required:!0},{field:"field33",component:"DatePicker",label:"字段33",colProps:{span:8},componentProps:{valueFormat:"YYYY-MM-DD"},rules:[{required:!0,type:"string"}]},{field:"field44",component:"InputCountDown",label:"验证码",colProps:{span:8},required:!0},{field:"field4",component:"Select",label:"字段4",colProps:{span:8},componentProps:{mode:"multiple",options:[{label:"选项1",value:"1",key:"1"},{label:"选项2",value:"2",key:"2"}]},rules:[{required:!0,message:"请输入规则",type:"array"}]},{field:"field441",component:"Input",label:"自定义校验",colProps:{span:8},rules:[{required:!0,validator:(o,e)=>f(null,null,function*(){return e?e==="1"?Promise.reject("值不能为1"):Promise.resolve():Promise.reject("值不能为空")}),trigger:"change"}]},{field:"field5",component:"CheckboxGroup",label:"字段5",colProps:{span:8},componentProps:{options:[{label:"选项1",value:"1"},{label:"选项2",value:"2"}]},rules:[{required:!0}]},{field:"field7",component:"RadioGroup",label:"字段7",colProps:{span:8},componentProps:{options:[{label:"选项1",value:"1"},{label:"选项2",value:"2"}]},rules:[{required:!0,message:"覆盖默认生成的校验信息"}]},{field:"field8",component:"Input",label:"后端异步验证",colProps:{span:8},helpMessage:["本字段演示异步验证","本地规则:必须填写","后端规则:不能包含admin"],rules:[{required:!0,message:"请输入数据"},{validator(o,e){return new Promise((t,u)=>{_(e).then(()=>t()).catch(l=>{u(l.message||"验证失败")})})}}]}],S=P({components:{BasicForm:A,CollapseContainer:B,PageWrapper:y},setup(){const{createMessage:o}=V(),[e,{validateFields:t,clearValidate:u,getFieldsValue:l,resetFields:d,setFieldsValue:i}]=D({labelWidth:120,schemas:b,actionColOptions:{span:24}});function s(){return f(this,null,function*(){try{const m=yield t()}catch(m){}})}function r(){return f(this,null,function*(){u()})}function a(){const m=l();o.success("values:"+JSON.stringify(m))}function g(){i({field1:1111,field5:["1"],field7:"1",field33:"2020-12-12",field3:"2020-12-12"})}return{register:e,schemas:b,handleSubmit:m=>{o.success("click search,values:"+JSON.stringify(m))},getFormValues:a,setFormValues:g,validateForm:s,resetValidate:r,resetFields:d}}}),E={class:"mb-4"};function I(o,e,t,u,l,d){const i=C("a-button"),s=C("BasicForm"),r=C("CollapseContainer"),a=C("PageWrapper");return k(),F(a,{title:"表单校验示例"},{default:n(()=>[v("div",E,[p(i,{onClick:o.validateForm,class:"mr-2"},{default:n(()=>e[0]||(e[0]=[c(" 手动校验表单")])),_:1},8,["onClick"]),p(i,{onClick:o.resetValidate,class:"mr-2"},{default:n(()=>e[1]||(e[1]=[c(" 清空校验信息")])),_:1},8,["onClick"]),p(i,{onClick:o.getFormValues,class:"mr-2"},{default:n(()=>e[2]||(e[2]=[c(" 获取表单值")])),_:1},8,["onClick"]),p(i,{onClick:o.setFormValues,class:"mr-2"},{default:n(()=>e[3]||(e[3]=[c(" 设置表单值")])),_:1},8,["onClick"]),p(i,{onClick:o.resetFields,class:"mr-2"},{default:n(()=>e[4]||(e[4]=[c(" 重置")])),_:1},8,["onClick"])]),p(r,{title:"表单校验"},{default:n(()=>[p(s,{onRegister:o.register,onSubmit:o.handleSubmit},null,8,["onRegister","onSubmit"])]),_:1})]),_:1})}const Ie=q(S,[["render",I]]);export{Ie as default};