0.1.166 • Published 2 years ago

xmceloan-form-design-cst v0.1.166

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

表单设置组建

属性: widgetForm 配置项 defaulTypeList 默认值类型配置项 widgetFormSelect 配置项选中项 selectList 体验事项 (动态下拉框 传入参数 { value: 1, label: '13' },{ value: 2, label: '22' },) stencil 模版组件 (参数与配置项list相同) 事件: @handleClear 清空事件的回调

表单展示组建

属性: widgetForm 配置项 widgetModels 配置项默认值对象 resetWord 重置按钮文字 saveWord 保存按钮文字 submitWord 提交按钮文字 closeWord 关闭按钮文字 isShowBtn 是否显示提交按钮 isShowReset 是否显重置值按钮 isShowSave 是否显示保存按钮 isShowClose 是否显示关闭按钮 isShowLine 是否显示按钮顶部与表单顶部的线条 isConfirm 提交时是否需要二次确认提示 isView 是否禁用表单 loadDown 附件下载接口地址 //'/common/download/resource?filePath=' upload 附件上传接口地址 // upLoadBaseUrl 附件下载地址前缀 // ‘http://10.0.251.212:8888’ data 附件上传参数 headers 附件上传请求头信息 btnposition 按钮水平布局控制 size 按钮尺寸 事件: @saveCallback 保存按钮回调事件 =>(formData) 保存回调不经过表单rules验证 @closeHandleTest 关闭按钮回调事件 @resetCallback 重置按钮回调事件 @addCallback 提交按钮回调事件 =>(formData) 需要经过表单rules验证 @uploadDown 附件下载回调事件 =>(data) projectName=='haicang' 专用

默认值回显

默认值数组 valueObj: { checkBoxInput_1636427365000_55187: { option: 'Option 1', input: '12' } , input_1636427380000_90623: '123123', time_1636427386000_83661: '09:50:58', checkbox_1636427361000_29174: 'Option 1', 'Option 2', input_1636427352000_34791: '11', textarea_1636427357000_13834: '22' }, 配置项数组 widgetForm: { list: [ { key: '1638175179000_76523', rules: [], model: 'imgupload_1638175179000_76523', typeName: '上传文件', type: 'imgupload', options: { innerWidth: '100%', isQiniu: false, tokenFunc: 'funcGetToken', width: '', domain: 'http:\/\/pfp81ptt6.bkt.clouddn.com\/', disabled: false, length: 8, size: { width: 100, height: 100 }, multiple: false, defaultValue: { status: 'success', uid: 1638175185056, name: '体验官表单.jpg', url: '\/2021\/11\/29\/6d64177c-ea56-47ba-874b-86919ad2b92a.jpg' } , token: '', isDelete: false, isEdit: false, action: 'https:\/\/jsonplaceholder.typicode.com\/photos\/', remoteFunc: 'func_1638175179000_76523', min: 0 }, name: '上传文件', icon: 'icon-tupian' } ], config: { labelWidth: 100, labelPosition: 'right', size: 'small', projectName:'haicang' } }, 回显方法 valueInit() { // if (res.data.representation && res.data.values) { // let data = JSON.parse(res.data.representation); let data = this.widgetForm // console.log("表单", data); // 处理表单回显 for (let i in data.list) { if (data.listi.type == 'grid') { //栅格布局 for (let j in data.listi.columns) { this.listInit(data.listi.columnsj.list) } } else { //普通布局 this.listInit([data.listi]) } } const arr = data.list.map(v => { if (v.name == '体验事项') { v.option.option == this.selectList return v } else { return v } }) this.widgetFormValue = { list: arr, config: { ...data.config } } this.$refs.previewPage.referKey++ }, listInit(_list) { for (let i in this.valueObj) { let _index = _list.findIndex(function(params) { return params.model == i }) if (_index > -1) { if (_list_index.type == 'checkBoxInput') { const boxList = [] const inputList = [] this.valueObji.map(v => { boxList.push(v.option) inputList.push(v.input) }) _list_index.options.previewValue.boxlist = boxList _list_index.options.previewValue.valueList = _list _index .options.options.map(v => { return v.value }) _list_index.options.previewValue.valueList.map((v, i) => { boxList.map((j, k) => { if (j == v) { return (_list_index.options.previewValue.inputListi = inputListk) } }) }) } else if (_list_index.type == 'radioInput') { if (this.valueObji) { const boxList = this.valueObji.option const inputList = [] this.valueObji.map(v => { inputList.push(v.input) }) _list_index.options.previewValue.boxlist = boxList const a = (_list_index.options.previewValue.valueList = _list _index .options.options.map(v => { return v.ifRemark })) a.map((v, i) => { if (v) { _list_index.options.previewValue.inputListi = inputList0 } else { _list_index.options.previewValue.inputListi = '' } }) } } else if(_list_index.type == 'table'){ console.log(i) _list_index.tableData = this.valueObji console.log(_list_index.tableData) }else{ _list_index.options.defaultValue = this.valueObji } } } },

配置项示例 widgetModels: { table_1641263289000_33408: { input_1641263672000_31294: '3', input_1641263676000_59762: '4', row_index: 0, input_1641263681000_1135: '7', input_1641263665000_36914: '1', input_1641263678000_77264: '5', input_1641263669000_2609: '2' }, { input_1641263669000_2609: '1234', input_1641263678000_77264: '1234567', input_1641263676000_59762: '123456', row_index: 1, input_1641263681000_1135: '12345678', input_1641263665000_36914: '123', input_1641263672000_31294: '12345' } , input_1641266034000_77509: '222', input_1641368888000_7072: '444' }, stencil: [ { type: 'text', name: '文字', typeName: '文字', noLabel: false, icon: 'icon-wenzishezhi-', options: { defaultValue: '设置默认值', customClass: '', layout: 'left', fontSize: '14', color: '#333333', bold: false, italic: false, lineStyle: 'none', remoteFunc: 'func_1638430361000_47102' }, key: '1638430361000_47102', model: 'text_1638430361000_47102', rules: [] }, { type: 'input', noLabel: false, name: '单行文本', typeName: '单行文本', icon: 'icon-diy-com-textarea', options: { innerWidth: '100%', width: '100%', defaultValue: '', defaultValueType: '', required: true, dataType: 'string', ywType: '', pattern: '', placeholder: '', disabled: false, layout: 'left', fontSize: 14, color: '#333333', labelPosition: 'left', remoteFunc: 'func_1638500005000_54617' }, key: '1638500005000_54617', model: 'input_1638500005000_54617', rules: { type: 'string', message: '单行文本格式不正确' }, { required: true, message: '单行文本必须填写!' } }, { type: 'radioInput', name: '单选配置', typeName: '单选配置', icon: 'icon-wenzishezhi-', options: { defaultValue: '', previewValue: { boxlist: '', inputList: [], valueList: [] }, inline: false, showLabel: false, labelTitle: '', options: { value: 'Option 1', label: 'Option 1', ifRemark: true, ifRequired: false, description: '' }, { value: 'Option 2', label: 'Option 2', ifRemark: false, ifRequired: false, description: '' }, { value: 'Option 3', label: 'Option 3', ifRemark: false, ifRequired: false, description: '' } , cascader: false, required: false, requiredSelf: true, innerWidth: '100%', width: '', max: 3, disabled: false, bold: false, italic: false, remoteFunc: 'func_1638502919000_79155' }, key: '1638502919000_79155', model: 'radioInput_1638502919000_79155', rules: [] } ], defaulTypeList: { value: 'ENTERPRISE_NAME', label: '企业名称' }, { value: 'ENTERPRISE_CODE', label: '统一社会信用代码' }, { value: 'ORGANIZATION_CODE', label: '组织机构代码' }, { value: 'REGISTERED_ADDRESS', label: '注册地址' }, { value: 'REGISTERED_CAPITAL', label: '注册资本' }, { value: 'INFORMANT_NAME', label: '填报人' }, { value: 'INFORMANT_PHONE', label: '填报人手机号' }, { value: 'LEGAL_REPRESENTATIVE_NAME', label: '法人代表姓名' }, { value: 'LEGAL_REPRESENTATIVE_CERT_TYPE', label: '法人代表证件类别' }, { value: 'LEGAL_REPRESENTATIVE_CERT_NUMBER', label: '法人代表证件号码' }, { value: 'LEGAL_REPRESENTATIVE_CONTACT', label: '法人联系方式' }, { value: 'BUSINESS_ADDRESS', label: '经营地址' }, { value: 'INDUSTRY_CODE', label: '所属行业' }, { value: 'REGISTRATION_DATE', label: '登记日期' }, { value: 'REGION', label: '所在区域' } , selectList: { value: 1, label: '13' }, { value: 2, label: '22' }, { value: 3, label: '31' }, { value: 31, label: '33331' }

强化js 使用规范 (function(){ (默认生成匿名立即执行函数) $('inputid=input_1641266034000_77509')0.dispatchEvent(new Event('input')), (激活目标组件的dom与vue双向绑定关联) $('inputid=input_1641266034000_77509')0.value = (目标组件赋值) Number($('inputid=input_1641263665000_36914')0.value) + (目标组件计算方法) Number($('inputid=input_1641263665000_36914')1.value) + Number($('inputid=input_1641263669000_2609')0.value) + Number($('inputid=input_1641263669000_2609')1.value) })() 计算方法目标获取 如被计算组件只有一个则$('inputid=input_1641263665000_36914')获取后是长度为1的数组 即根据角标0获取对应value 如被计算组件有n个则$('inputid=input_1641263665000_36914')获取后是长度为n的数组 即根据角标n获取对应value

0.1.166

2 years ago

0.1.165

2 years ago

0.1.164

2 years ago

0.1.149

2 years ago

0.1.158

2 years ago

0.1.157

2 years ago

0.1.154

2 years ago

0.1.153

2 years ago

0.1.156

2 years ago

0.1.155

2 years ago

0.1.150

2 years ago

0.1.152

2 years ago

0.1.151

2 years ago

0.1.161

2 years ago

0.1.160

2 years ago

0.1.163

2 years ago

0.1.162

2 years ago

0.1.118

2 years ago

0.1.117

2 years ago

0.1.119

2 years ago

0.1.114

2 years ago

0.1.113

2 years ago

0.1.116

2 years ago

0.1.115

2 years ago

0.1.110

2 years ago

0.1.112

2 years ago

0.1.111

2 years ago

0.1.129

2 years ago

0.1.128

2 years ago

0.1.125

2 years ago

0.1.124

2 years ago

0.1.127

2 years ago

0.1.126

2 years ago

0.1.121

2 years ago

0.1.120

2 years ago

0.1.123

2 years ago

0.1.122

2 years ago

0.1.139

2 years ago

0.1.136

2 years ago

0.1.135

2 years ago

0.1.138

2 years ago

0.1.137

2 years ago

0.1.132

2 years ago

0.1.131

2 years ago

0.1.134

2 years ago

0.1.133

2 years ago

0.1.130

2 years ago

0.1.147

2 years ago

0.1.146

2 years ago

0.1.148

2 years ago

0.1.143

2 years ago

0.1.142

2 years ago

0.1.145

2 years ago

0.1.144

2 years ago

0.1.141

2 years ago

0.1.140

2 years ago

0.1.97

2 years ago

0.1.98

2 years ago

0.1.99

2 years ago

0.1.107

2 years ago

0.1.106

2 years ago

0.1.109

2 years ago

0.1.108

2 years ago

0.1.103

2 years ago

0.1.102

2 years ago

0.1.105

2 years ago

0.1.104

2 years ago

0.1.101

2 years ago

0.1.100

2 years ago

0.1.96

2 years ago

0.1.90

2 years ago

0.1.91

2 years ago

0.1.92

2 years ago

0.1.93

2 years ago

0.1.94

2 years ago

0.1.95

2 years ago

0.1.85

2 years ago

0.1.86

2 years ago

0.1.87

2 years ago

0.1.88

2 years ago

0.1.89

2 years ago

0.1.80

2 years ago

0.1.82

2 years ago

0.1.84

2 years ago

0.1.77

2 years ago

0.1.78

2 years ago

0.1.74

3 years ago

0.1.75

3 years ago

0.1.76

3 years ago

0.1.72

3 years ago

0.1.70

3 years ago

0.1.71

3 years ago

0.1.66

3 years ago

0.1.68

3 years ago

0.1.69

3 years ago

0.1.63

3 years ago

0.1.64

3 years ago

0.1.65

3 years ago

0.1.58

3 years ago

0.1.59

3 years ago

0.1.61

3 years ago

0.1.62

3 years ago

0.1.53

3 years ago

0.1.54

3 years ago

0.1.55

3 years ago

0.1.56

3 years ago

0.1.57

3 years ago

0.1.52

3 years ago

0.1.50

3 years ago

0.1.51

3 years ago

0.1.49

3 years ago

0.1.41

3 years ago

0.1.42

3 years ago

0.1.44

3 years ago

0.1.45

3 years ago

0.1.46

3 years ago

0.1.47

3 years ago

0.1.48

3 years ago

0.1.40

3 years ago

0.1.39

3 years ago

0.1.35

3 years ago

0.1.36

3 years ago

0.1.37

3 years ago

0.1.30

3 years ago

0.1.32

3 years ago

0.1.33

3 years ago

0.1.34

3 years ago

0.1.27

3 years ago

0.1.28

3 years ago

0.1.29

3 years ago

0.1.20

3 years ago

0.1.21

3 years ago

0.1.22

3 years ago

0.1.23

3 years ago

0.1.24

3 years ago

0.1.25

3 years ago

0.1.10

3 years ago

0.1.11

3 years ago

0.1.12

3 years ago

0.1.13

3 years ago

0.1.14

3 years ago

0.1.15

3 years ago

0.1.16

3 years ago

0.1.8

3 years ago

0.1.17

3 years ago

0.1.7

3 years ago

0.1.18

3 years ago

0.1.19

3 years ago

0.1.9

3 years ago

0.1.5

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.3

3 years ago

0.0.1

3 years ago