适用场景

表单引擎多用于需要动态创建表单的系统中,在这类系统中,表单功能往往不是开发者直接编码构建的, 其实现方式通常是先通过人工可视化进行配置,之后交由程序自动化解析、绘制, 开发者需要编码实现的是能驱动这一过程的程式,通常被称为“表单引擎”。

Reactive Form 抽象了一组基于原生 Js 实现的、无依赖的、适用于构建表单引擎的模型。 其核心聚合了成员管理、状态联动、Hook 拦截、DSL 解析等能力。 通过对核心进行扩展,可衍生出各具特色的表单引擎。

基于模型与视图分离的设计原则, Reactive Form 具备模型和视图的双层跨端能力。 支持使用多种技术栈定制 UI,提供了通过一致的模型 API 来驱动不同技术栈/平台下视图组件的能力。

为了方便使用,Reactive Form 内置了一个基于核心扩展出的表单引擎, 集成了常用的成员类型,如文本输入、数字输入、单选、多选等,且提供了配套的视图层组件。 对于定制化要求不高的场景,可直接使用或在其基础上再行扩展。

另外,有些项目虽不需要引擎驱动动态配置的表单,但有大量表单需开发人员实现。 此类场景,也可考虑使用 Reactive Form,开发人员可以通过编写表单配置的方式快速实现表单功能。