el-form 表单组件封装
缘由
公司后台管理表单页过多,且大部分都是普通 input select 框,重复度过高,为了避免无用劳动则对 form 进行封装
BasicForm组件
1 | <template> |
使用
引用 注册 form 组件
1 | import BasicForm from '@/components/BasicForm'; |
在模板中使用
1 | <BasicForm |
数据结构
组件 json 数据格式,为了不混淆统一在 formInfo 这个大对象里
1 | formInfo: { |
ref组件实例data表单数据selectOption下拉列表对象,里面存放下拉框数组,有几个就放几个(后端返回的下拉列表数据)fieldList字段类型、label列表rules表单验证规则
如果 fieldList 列表里 type 类型是 select,则 list 字段的 value 就是 selectOption 对象所对应的数组列表
1 | fieldList: [ |
数据结构示例
关于表单校验规则封装可以看上一篇文章: el-form 表单校验规则封装
1 | data() { |
事件函数
该组件对外暴露 handleEvent() 事件函数,可以操纵每个 form-item,用来自定义事件。
1 | handleEvent (row) { |
结语
无论是十五岁,三十岁,四十岁,抑或五十岁,人们都为同样的事愤怒,为同样的事欢笑振奋;同样狡猾,同样软弱,卑微