跳到主要内容

online新增组件

以popupDict字典为例

  1. 先编写popupDict组件.(src/components/Form/src/jeecg/components/JPopupDict.vue)

  2. 在src/components/Form/src/componentMap.ts 文件引入,存在componentMap中,以供 BasicForm 组件使用。

  1. 在 src/views/super/online/cgform/components/tables/PageAttributeTable.vue 文件中的 commonPageOptions数组中加入对应的组件名和label,以供在 online新增弹窗--页面属性--空间类型 能够选择该组件。

  1. 后端 org.jeecg.modules.online.cgform.service.impl.OnlineServiceImpl#getOnlColumnByField 这个方法,内添加如下代码,popup_dict常量是控件的名称

5.后端 org.jeecg.common.util.jsonschema.validate包下新增实体,继承CommonProperty.

  1. 后端 org.jeecg.modules.online.cgform.util.CgformUtil#getJsonSchemaByCgformFieldList

方法内根据循环的OnlCgformField的类型构造新增的控件的对象添加到props参数中去

  1. 在 src/views/super/online/cgform/auto/comp/factory/impl 文件夹下新增一个PopupDictWidget.ts 即 PopupDictWidget类,处理 popupDict组件的props参数。

  2. 在 src/views/super/online/cgform/auto/comp/factory/FormSchemaFactory.ts 内引入上一步的文件导出的类以供online页面渲染该组件时调用。

通过以上步骤即可新增一个online组件。