在React和Vue没有流行起来的时候,低代码产品的表单渲染设计通常会使用操作Dom的方式实现。
下面是一个表单的例子:
产品层
用户通过打开表单,使用不同业务场景业务下的表单页面,中间的Render层就是技术实现。
每一个不同业务的表单页面就是低代码产品中的一个元素。
技术层
渲染层的核心在于View和Controller,现代基于框架实现一般是MVVM的实现。上面是基于传统的前端框架实现(Jquery),少了M层,也就是Model。其实Model是在Controller层内部实现。
Controller层实现了数据的获取和传递,以及继承了第三方框架的能力(Jquery)
View层是表单控件的渲染和内部逻辑处理实现,包括渲染哪些控件,如何校验和响应控件事件等
View层中的Controls是所有表单控件的集合,通过对应不同的类型渲染不同的控件,例如:输入框,选择框等等。
View层中的IControl实现了每一个控件的基本属性和能力,Controls中的每个控件通过继承他来实现自己特有的功能。
View层可以被拓展,可以被添加其他属性。