Skip to content

Form 表单组件

配置化表单组件,用以对 ElFrom 的配置化支持。

tips

继承 ElForm 所有属性

基础用法

传入一套 formOpts 配置即可生成一个表单。

title 表单内部标题

使用表单内部标题项可添加配置 attrsisShowExpand 属性,控制是否显示展开按钮。

slot 自定义表单项

  1. 如果配置中 Object 的 keyslotName 相同,如示例中的 paramsSlot 则不会默认生成对应的 ElFormItem 组件。

  2. 如果配置中 Object 的 keyslotName 不同,如示例中的 elementSlot 则会默认生成对应的 ElFormItem 组件。此时可以配置对应的 ElFormItem 属性如:label...

  3. 同样的 title 插槽内部也可以配置 slot 插槽来展示一些不一样的东西,你可以通过不同的 css 来展示不同的 title 效果。

    3.1 插槽同样支持各种类型:string、VNode、J/Tsx、any[Component]

  4. 同样,组件也支持 [ElComponent] slot 插槽属性的配置。如示例中的 ElInput 组件在 attrs 中配置的 slot,详细目录可参考 -> Slot

formOpts config

除以下表格内所示属性外 配置在 formOpts 内的属性都会传递给 el-form-item 组件。 详情可见 -> el-form-item

参数说明类型默认值(ms)
[key]表单唯一字段 对应 formData 内 keystring-
type需要渲染的组件类型title/slot/[ElComponents]-
label表单项 labelstring-
slotName使用插槽名称string-
required是否校验为必填项booleanfalse
colSize组件所占rows内列宽number24
attrs继承至FormItem内部的组件属性 任意 el-plus组件typeof [ElComponents]详细说明-

attrs

同样支持一个返回所有配置的函数,对象内属性会传递给对应的组件。

除下表内属性,其他属性继承 [ElComponents] 所有属性。 例如: -> ElInput

参数说明类型默认值(ms)
attrs插槽配置Object / () => attrs-
slot插槽配置 slot 详细说明slot-
className自定义类名string-
isShowExpand是否显示展开按钮booleanfalse

slot

插槽属性配置

参数说明类型默认值(ms)
name插槽名string-
render插槽内容:支持多种类型string、VNode、J/Tsx、any[Component]-

events

定义在组件类型上的事件:支持 [ElComponents] 上所有事件
例:change: ($event, val) => fn($event, val)

参数说明类型默认值(ms)
[events]事件名 'blur' / 'change'() => void-