k-form-design
Version:
基于vue、ant-design-vue的表单设计器,可视化开发表单
1 lines • 5.51 kB
JavaScript
(("undefined"!==typeof self?self:this)["webpackJsonpk_form_design"]=("undefined"!==typeof self?self:this)["webpackJsonpk_form_design"]||[]).push([[27],{"20f6":function(e,t,n){"use strict";n.r(t);var o=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("a-form-model",{ref:"dynamicValidateForm",staticClass:"select-input-list-box",attrs:{layout:"inline",model:e.dynamicValidateForm}},e._l(e.record.columns,(function(t,o){return n("div",{key:o,staticClass:"list-col"},[n("a-form-model-item",{staticClass:"w-auto"},[e.record.options.multiple?n("CheckboxItem",{attrs:{checked:e.dynamicValidateForm.domains[o].checked},on:{change:function(t){return e.onCheckboxChange(t,o)}}},[e._v(" "+e._s(t.label)+" ")]):n("RadioItem",{attrs:{checked:e.dynamicValidateForm.domains[o].checked},on:{change:function(t){return e.onRadioChange(t,o)}}},[e._v(e._s(t.label))])],1),e._l(t.list,(function(t){return n("KFormModelItem",{key:t.key+"1",attrs:{record:t,config:e.config,parentDisabled:e.disabled,domains:e.dynamicValidateForm.domains,index:o,dynamicData:e.dynamicData},on:{input:e.handleInput},model:{value:e.dynamicValidateForm.domains[o][t.model],callback:function(n){e.$set(e.dynamicValidateForm.domains[o],t.model,n)},expression:"dynamicValidateForm.domains[i][item.model]"}})}))],2)})),0)},i=[],a=(n("ac6a"),n("44e6")),r=n("e74d"),s=r["d"].getComponent("checkboxItem").component,c=r["d"].getComponent("radioItem").component,d={name:"KSelectInputList",props:["record","value","dynamicData","config","parentDisabled"],components:{KFormModelItem:a["a"],CheckboxItem:s,RadioItem:c},watch:{value:{handler:function(e){var t=e||[];t.length||this.record.columns.forEach((function(e){var n={};e.list.forEach((function(e){return e.model&&(n[e.model]=null)})),n.checked=!1,n.value=e.value,n.label=e.label,t.push(n)})),this.dynamicValidateForm.domains=t},immediate:!0,deep:!0}},data:function(){return{dynamicValidateForm:{domains:[]}}},computed:{disabled:function(){return this.record.options.disabled||this.parentDisabled}},methods:{validationSubform:function(){var e;return this.$refs.dynamicValidateForm.validate((function(t){e=t})),e},resetForm:function(){this.$refs.dynamicValidateForm.resetFields()},onCheckboxChange:function(e,t){this.dynamicValidateForm.domains[t].checked=e.target.checked,this.handleInput()},onRadioChange:function(e,t){this.dynamicValidateForm.domains.forEach((function(e){return e.checked=!1})),this.dynamicValidateForm.domains[t].checked=e.target.checked,this.handleInput()},handleInput:function(){this.$emit("change",this.dynamicValidateForm.domains)}},mounted:function(){this.handleInput()}},m=d,l=n("2877"),p=Object(l["a"])(m,o,i,!1,null,null,null),u=p.exports;t["default"]=u},"44e6":function(e,t,n){"use strict";var o=function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.record.options.noFormItem?n(e.componentItem,e._b({tag:"component"},"component",e.getComponentProps,!1)):n("a-form-model-item",{attrs:{prop:"domains."+e.index+"."+e.record.model,rules:e.record.rules}},[n(e.componentItem,e._b({ref:"inputItem",tag:"component",on:{change:e.handleChange}},"component",e.getComponentProps,!1))],1)},i=[],a=(n("8e6e"),n("ac6a"),n("cadf"),n("456d"),n("ade3")),r=n("e74d");function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function c(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(Object(n),!0).forEach((function(t){Object(a["a"])(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var d=n("a6fb"),m=r["d"].getComponents(),l={name:"KFormModelItem",props:["record","domains","index","value","parentDisabled","dynamicData","config"],computed:{getComponentProps:function(){var e=this.record,t=c(c({record:e},this.componentOption),{},{config:this.config,disabled:this.disabled||e.options.disabled,parentDisabled:this.disabled||e.options.disabled,allowClear:e.options.clearable,mode:e.options.multiple?"multiple":"",value:this.value||e.options.defaultValue,style:e.options.width&&"width:".concat(e.options.width),height:"undefined"!==typeof e.options.height?e.options.height:"",dynamicData:this.dynamicData,options:e.options.dynamic?this.dynamicData[e.options.dynamicKey]?this.dynamicData[e.options.dynamicKey]:[]:e.options.options});return"textarea"===this.record.type&&(t.autoSize={minRows:e.options.minRows,maxRows:e.options.maxRows}),"alert"===this.record.type&&(t.message=e.label),"number"===this.record.type&&(t.min=e.options.min||0===e.options.min?e.options.min:-1/0,t.max=e.options.max||0===e.options.max?e.options.max:1/0,t.precision=e.options.precision>50||!e.options.precision&&0!==e.options.precision?null:e.options.precision),"select"===this.record.type&&(t.filterOption=!!e.options.showSearch&&function(e,t){return t.componentOptions.children[0].text.toLowerCase().indexOf(e.toLowerCase())>=0}),t.value&&t.value!==this.value&&this.$emit("input",t.value),t},componentItem:function(){return m[this.record.type].component},componentOption:function(){return d.omit(this.record.options,["defaultValue","disabled"])}},methods:{handleChange:function(e){var t=e;e.target&&(t=e.target.value),this.$emit("input",t)}}},p=l,u=n("2877"),h=Object(u["a"])(p,o,i,!1,null,null,null);t["a"]=h.exports}}]);