diff --git a/ui/src/workflow/nodes/loop-body-node/LoopBodyContainer.vue b/ui/src/workflow/nodes/loop-body-node/LoopBodyContainer.vue
index 856ef20c3..06ace5c7e 100644
--- a/ui/src/workflow/nodes/loop-body-node/LoopBodyContainer.vue
+++ b/ui/src/workflow/nodes/loop-body-node/LoopBodyContainer.vue
@@ -5,7 +5,7 @@
:class="{ isSelected: props.nodeModel.isSelected, error: node_status !== 200 }"
style="overflow: visible; background: #fff"
>
-
+
{{ nodeModel.properties.stepName }}
-
+
@@ -40,7 +40,10 @@
show-icon
:closable="false"
/>
-
+
+
+
+
{{ $t('common.param.outputParam') }}
@@ -115,16 +118,8 @@ import { ElMessage } from 'element-plus'
import type { FormInstance } from 'element-plus'
import { t } from '@/locales'
import { WorkflowMode } from '@/enums/application'
+
provide('workflowMode', WorkflowMode.ApplicationLoop)
-const height = ref<{
- stepContainerHeight: number
- inputContainerHeight: number
- outputContainerHeight: number
-}>({
- stepContainerHeight: 0,
- inputContainerHeight: 0,
- outputContainerHeight: 0,
-})
const titleFormRef = ref()
const nodeNameDialogVisible = ref(false)
@@ -179,14 +174,7 @@ const mousedown = () => {
}
const showicon = ref(null)
-const resizeStepContainer = (wh: any) => {
- if (wh.height) {
- if (!props.nodeModel.virtual) {
- height.value.stepContainerHeight = wh.height
- props.nodeModel.setHeight(height.value.stepContainerHeight)
- }
- }
-}
+const height = ref(600)
const props = defineProps<{
nodeModel: any
@@ -211,9 +199,22 @@ const enlarge = ref(false)
function enlargeHandle() {
enlarge.value = !enlarge.value
if (enlarge.value) {
- // ...
+ props.nodeModel.graphModel.transformModel.focusOn(
+ props.nodeModel.x,
+ props.nodeModel.y,
+ props.nodeModel.width + 470,
+ props.nodeModel.height - 30,
+ )
+ height.value =
+ (props.nodeModel.graphModel.height - 100) / props.nodeModel.graphModel.transformModel.SCALE_Y
+ const width = window.innerWidth / props.nodeModel.graphModel.transformModel.SCALE_X
+ props.nodeModel.width = width
+ props.nodeModel.setHeight(height.value)
} else {
- // ...
+ height.value = 600
+ const width = 1920
+ props.nodeModel.width = width
+ props.nodeModel.setHeight(height.value)
}
}
diff --git a/ui/src/workflow/nodes/loop-body-node/index.ts b/ui/src/workflow/nodes/loop-body-node/index.ts
index 839b7f0f6..fb34bf2e9 100644
--- a/ui/src/workflow/nodes/loop-body-node/index.ts
+++ b/ui/src/workflow/nodes/loop-body-node/index.ts
@@ -36,6 +36,17 @@ class LoopBodyModel extends AppNodeModel {
return anchors
}
+ setHeight(height: number) {
+ this.properties['height'] = height
+ this.outgoing.edges.forEach((edge: any) => {
+ // 调用自定义的更新方案
+ edge.updatePathByAnchor()
+ })
+ this.incoming.edges.forEach((edge: any) => {
+ // 调用自定义的更新方案
+ edge.updatePathByAnchor()
+ })
+ }
}
export default {
type: 'loop-body-node',
diff --git a/ui/src/workflow/nodes/loop-body-node/index.vue b/ui/src/workflow/nodes/loop-body-node/index.vue
index 101904310..bc0330b59 100644
--- a/ui/src/workflow/nodes/loop-body-node/index.vue
+++ b/ui/src/workflow/nodes/loop-body-node/index.vue
@@ -1,6 +1,6 @@
-
+