diff --git a/src/components/bpmnProcessDesigner/package/penal/PropertiesPanel.vue b/src/components/bpmnProcessDesigner/package/penal/PropertiesPanel.vue
index c4bc7b2e..c32c7620 100644
--- a/src/components/bpmnProcessDesigner/package/penal/PropertiesPanel.vue
+++ b/src/components/bpmnProcessDesigner/package/penal/PropertiesPanel.vue
@@ -56,7 +56,7 @@
自定义配置
-
+
diff --git a/src/components/bpmnProcessDesigner/package/penal/custom-config/ElementCustomConfig.vue b/src/components/bpmnProcessDesigner/package/penal/custom-config/ElementCustomConfig.vue
index 9d8b3f57..f9cb9ac4 100644
--- a/src/components/bpmnProcessDesigner/package/penal/custom-config/ElementCustomConfig.vue
+++ b/src/components/bpmnProcessDesigner/package/penal/custom-config/ElementCustomConfig.vue
@@ -11,27 +11,25 @@ defineOptions({ name: 'ElementCustomConfig' })
const props = defineProps({
id: String,
- type: String
+ type: String,
+ businessObject: {
+ type: Object,
+ default: () => {}
+ }
})
const bpmnInstances = () => (window as any)?.bpmnInstances
const customConfigComponent = ref(null)
watch(
- () => props.type,
+ () => props.businessObject,
() => {
- if (props.type) {
- const element = bpmnInstances().bpmnElement.businessObject
- let elementType = props.type
- if (element.eventDefinitions) {
- // 处理类似共用BoundaryEvent类型的TimerEvent
- elementType += element.eventDefinitions[0].$type.split(':')[1]
- }
- const config = CustomConfigMap[elementType]
- if (config) {
- customConfigComponent.value = config.componet
- return
+ if (props.type && props.businessObject) {
+ let val = props.type
+ if (props.businessObject.eventDefinitions) {
+ val += props.businessObject.eventDefinitions[0]?.$type.split(':')[1] || ''
}
+ customConfigComponent.value = CustomConfigMap[val]?.componet
}
},
{ immediate: true }