自定义组件
自定义服务除了可以使用平台提供的系统组件,还可以使用自定义组件。
组件类型
1、Groovy脚本
用户需要定义:组件名称、分类、组件描述、属性,组件脚本;
2、源代码
用户需要上传实现com.bjc.base.lowcode.component.ServiceComponent接口的java源码,在Java类中实现:组件名称、分类、组件描述、属性,不需要再在页面上设置
3、class字节码
用户需要上传实现com.bjc.base.lowcode.component.ServiceComponent接口编译后的.class字节码,在Java类中实现:组件名称、分类、组件描述、属性,不需要再在页面上设置
设置属性
用于定义组件在使用时需要设置的属性,使用json数组定义,属性如下:
属性 | 说明 |
---|---|
type | 属性类型:[string textarea, checkbox, select, service],分别对应[单行文本,多行文本,单选,列表,服务] |
attr | 属性名称 |
name | 显示名称 |
value | 默认值,pe=string时设置 |
help | 帮助说明 |
url | 服务url,type=service时设置,服务返回键值对的数据结构,同item |
formula | 是否可使用表达式,type=string时设置 |
item | 选项,type=select时设置,键值对的Map,如:{"create":"新增", "update":"更新"} |
例如:
<<<<<<< HEAD
[
{"attr":"params","name":"请求参数","type":"string","value":"${ctx.param}","help":"查询时的输入参数"},
=======
\[
{"attr":"params","name":"请求参数","type":"string","value":"${ctx.param}","help":"查询时的输入参数"}
>>>>>>> 3f6484123e034b3b712cbc7c20b3e7adc6b0f2b5
{"attr":"type","name":"操作类型","type":"select","item":{"create":"新增", "update":"更新"}},
<<<<<<< HEAD
{"attr":"type","name":"操作类型","type":"service","url":"/byk/service/exec/service1"}
]
=======
{"attr":"type","name":"操作类型","type":"service","url":"/byk/service/exec/service1"}
\]
>>>>>>> 3f6484123e034b3b712cbc7c20b3e7adc6b0f2b5
组件逻辑
1、Groovy脚本直接将脚本粘贴到脚本属性上
2、源代码不需要手动设置组件属性,直接通过实现ServiceComponent接口获取,将整个实现类的源代码直接粘贴到页面源码处
3、class字节码也不需要手动设置组件属性,直接通过实现ServiceComponent接口获取,将实现类编译好的class文件上传即可