From 1e41a759d4b0ee5b6072e5bd45d9938591f90bc9 Mon Sep 17 00:00:00 2001 From: Cloud Zhang <941187371@qq.com> Date: 星期三, 22 五月 2024 20:21:06 +0800 Subject: [PATCH] 侧边框优化 --- src/components/FlowChart/src/FlowChart.vue | 51 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 49 insertions(+), 2 deletions(-) diff --git a/src/components/FlowChart/src/FlowChart.vue b/src/components/FlowChart/src/FlowChart.vue index 8b4f524..dde4080 100644 --- a/src/components/FlowChart/src/FlowChart.vue +++ b/src/components/FlowChart/src/FlowChart.vue @@ -7,6 +7,8 @@ @save-data="handleSave" @add-data="handleAdd" @addlf="handleAddlf" + @undo="handleUndo" + @redo="handleRedo" /> <div ref="lfElRef" class="h-full"></div> <BasicModal @register="register" title="娴佺▼鏁版嵁" width="50%"> @@ -35,6 +37,11 @@ import { useMessage } from '/@/hooks/web/useMessage'; import { useI18n } from '/@/hooks/web/useI18n'; import actionRect from './actionRect'; + import TestNode from './TestNode'; + import CollectNode from './CollectNode'; + import AssemblyNode from './AssemblyNode'; + import PackingNode from './PackingNode'; + import RepairNode from './RepairNode'; const { notification } = useMessage(); const { t } = useI18n(); @@ -61,7 +68,16 @@ type: Array, }, }, - emits: ['view-data', 'save-data', 'add-lf', 'select-node', 'click-blank'], + emits: [ + 'view-data', + 'save-data', + 'add-lf', + 'select-node', + 'click-blank', + 'init', + 'undo', + 'redo', + ], setup(props, { emit }) { const globSetting = useGlobSetting(); const lfElRef = ref(null); @@ -147,6 +163,11 @@ const lf = unref(lfInstance)!; // lf?.setDefaultEdgeType('line'); lf.register(actionRect); + lf.register(TestNode); + lf.register(CollectNode); + lf.register(AssemblyNode); + lf.register(PackingNode); + lf.register(RepairNode); onRender(); lf?.setPatternItems(props.patternItems || configDefaultDndPanel(lf)); } @@ -180,7 +201,7 @@ // description: `${data.data.text.value}: ${data.isSelected}`, // duration: 3, // }); - emit('select-node', data); + emit('select-node', data, lf); } else { console.log(data.data.type); } @@ -189,6 +210,13 @@ lf.on('blank:mousedown', (e) => { emit('click-blank'); }); + + lf.on('node:dnd-add', (data, e) => { + console.log('node:dnd-add', data); + emit('select-node', data, lf); + }); + + emit('init', lf); } function handlePreview() { @@ -227,6 +255,22 @@ emit('add-lf', lf); } + function handleUndo() { + const lf = unref(lfInstance); + if (!lf) { + return; + } + emit('undo', lf); + } + + function handleRedo() { + const lf = unref(lfInstance); + if (!lf) { + return; + } + emit('redo', lf); + } + onMounted(init); return { @@ -238,7 +282,10 @@ handleSave, handleAdd, handleAddlf, + handleUndo, + handleRedo, }; }, }); </script> +./TestNode -- Gitblit v1.9.3