VForm支持三种前端代码生成:Vue组件、HTML源码、SFC组件,以下对三种生成的代码进行简单对比。

    代码类型 依赖包 备注
    Vue组件 vue2、element-ui、variant-form 适合Vue2项目
    HTML源码 vue2、element-ui、variant-form 适合历史遗留Web项目
    SFC组件 Vue2版 vue2、element-ui 适合Vue2项目
    Vue3版 vue3、element-plus 适合Vue3项目

    根据上表对比可以发现,生成的SFC组件代码可以脱离VForm运行,因为SFC组件相当于把JSON表单转化为手写的vue2 + element-ui代码或vue3+ element-plus代码。

    SFC组件和Vue组件(含HTML源码)的区别在于,SFC组件失去了动态表单的所有功能,包括交互逻辑控制、API方法调用、事件响应等等,无法满足在运行时变更表单的需求。