简介
概况
该组件是真实用于作者主导&参与的多个项目中,且项目已经通过了上线检验,所以满足条件的小伙伴可以放心食用。
食用范围
(作者认为)该组件目前只适用于小型 / 快速开发 / UI 简洁的(外包)项目,大型项目的话慎用!至于公司产品的话就更不用说了,你都自研产品了,还能看上这个?
背景
由于现在(业务相对简单的)后台管理端功能和页面都大同小异,特别针对小型的外包项目,大部分页面功能都是 CRUD,而 CRUD 的页面大多也是千篇一律,无非就是字段/接口的区别。
痛点
针对这千篇一律的最好办法就是 CV,但当看到拷贝后满屏的标签及样式代码时,不禁又暗暗摇头。改个表单字段,不光要去找标签中的属性,还得去修改表单的定义及校验,甚至可能需要去修改样式...
修改一个字段,至少需要修改 2 处代码,而且还不在同一位置,时间大部分都浪费在 ctrl + f 上。
TIP
有些同学在这里可能就要说,可以文件/全局替换。但是我想说的是,字段是替换了,但是组件类型呢?组件样式呢? 原来是 input,新字段对应的万一是 select 呢?还是得 ctrl + f 定位到位置,再慢慢改...
由来
因此我便想,能否封装一个组件,只需要传入一个配置 json,json 中包含表单里所需的名称/属性/组件类型等信息,它就能帮我渲染出相应的效果呢?
答案是肯定的,用 VUE 的 v-for + components 组件 就能轻松实现。
基于此原理,我便开始一步一步的完善该组件的功能...