# MyForm 表单
# 基本用法
-
Copy
# MyForm(属性)
TIP
使用 v-bind="$attrs" 通过属性透传将 MyForm 组件属性全部透传到 el-form 上,所以支持 el-form 的所有 Props 属性。在此基础上,还扩展了以下属性:
参数 | 说明 | 类型 | 是否必传 | 默认值 |
---|---|---|---|---|
setFormData | 表单数据对象(应定义数据初始字段) | Object | true | — |
setFormConfig | 表单列表结构 | 二维数组 | true | — |
# setFormConfig(表单配置)
TIP
表单的配置
参数 | 说明 | 类型 | 是否必传 | 默认值 |
---|---|---|---|---|
formList | 结构为二维数组(支持二级动态表单),例: [[{label: '姓名', value: "name"}], [{label: '年龄'}, {label: '详情'}]] | Array | true | — |
formBtn | 表单底部按钮 | Array | — | — |
gutter | 栅格间隔 | number | — | 0 |
cols | 栅格布局 | Object | — | — |
# formList(表单列表结构)
TIP
使用 v-bind="$attrs" 通过属性透传将 对象属性全部透传到 el-form-item 和 该对象组件上,所以支持 el-form-item 的所有 Props 属性。 对象属性如下:
参数 | 说明 | 类型 | 是否必传 | 默认值 |
---|---|---|---|---|
label | 标签文本 | string | — | — |
value | 组件绑定字段名(支持连级) 例:'detail.name' | string | true | — |
el | element 组件名(input/select/switch) 支持(插槽 custom, 二级表单 towLevel) | string | true | — |
multiple | el 为 towLevel 时, 该字段为 true 可动态添加二级表单 | Boolean | — | — |
formList | 设置二级表单 | |||
enum | el 为 select 时, 该字段传递 option 遍历数据(label,value) | Array | — | — |
fieldNames | el 为 select 时, 设置 enum 的字段名 | Object | — | — |
props | 透传 el-form-item 和 el 绑定组件的属性到该组件上 | Object | — | — |
span | 栅格占据的列数(默认等分该行组件数) | Number | — | — |
# formBtn(表单列表结构)
TIP
使用 v-bind="$attrs" 通过属性透传将 对象属性全部透传到 el-button 上,所以支持 el-button 的所有 Props 属性。 对象属性如下:
参数 | 说明 | 类型 | 是否必传 | 默认值 |
---|---|---|---|---|
name | 按钮名称本 | string | — | — |
type | 按钮类型(primary/error/success) | string | — | — |
callBack | 按钮点击方法 | Function(data) | — | — |
# MyForm 方法
TIP
MyForm 组件暴露了 el-form 实例和一些组件内部的参数和方法:
参数 | 说明 |
---|---|
element | el-form 实例,可以通过 this.$refs.element.RefForm().方法名来调用 el-form 的所有方法 |
formData | 当前页面所展示的数据 |