diff --git a/packages/editor-ui/src/components/canvas/Canvas.vue b/packages/editor-ui/src/components/canvas/Canvas.vue index 64a9e5647a..521406ade5 100644 --- a/packages/editor-ui/src/components/canvas/Canvas.vue +++ b/packages/editor-ui/src/components/canvas/Canvas.vue @@ -31,6 +31,7 @@ import { GRID_SIZE } from '@/utils/nodeViewUtils'; import { CanvasKey } from '@/constants'; import { onKeyDown, onKeyUp, useDebounceFn } from '@vueuse/core'; import CanvasArrowHeadMarker from './elements/edges/CanvasArrowHeadMarker.vue'; +import { CanvasNodeRenderType } from '@/types'; const $style = useCssModule(); @@ -108,6 +109,7 @@ const { nodes: graphNodes, onPaneReady, findNode, + onNodesInitialized, } = useVueFlow({ id: props.id, deleteKeyCode: null }); const isPaneReady = ref(false); @@ -479,6 +481,11 @@ onPaneReady(async () => { isPaneReady.value = true; }); +onNodesInitialized((nodes) => { + if (nodes.length !== 1 || nodes[0].data?.render.type !== CanvasNodeRenderType.AddNodes) return; + void onFitView(); +}); + watch(() => props.readOnly, setReadonly, { immediate: true, });