Commit 3ca62dac1ec8634f1332ddb3a6f680d03a38d6c2

Authored by ww
1 parent 87e75906

feat: 实现debug按钮功能

... ... @@ -20,6 +20,8 @@ export function useSaveAndRedo() {
20 20
21 21 const route = useRoute();
22 22
  23 + const debugMarker = ref(false);
  24 +
23 25 const getRuleChainId = computed(() => (route.params as Record<'id', string>).id);
24 26
25 27 const { mergeData, deconstructionData } = useBasicDataTransform();
... ... @@ -175,12 +177,21 @@ export function useSaveAndRedo() {
175 177 return elements;
176 178 }
177 179
  180 + const handleRemoveDebug = (flowActionType: VueFlowStore) => {
  181 + for (const item of unref(flowActionType.getNodes)) {
  182 + (item.data as NodeData)!.data!.debugMode = false;
  183 + }
  184 + triggerChange();
  185 + };
  186 +
178 187 return {
179 188 loading,
  189 + debugMarker,
180 190 changeMarker,
181 191 triggerChange,
182 192 handleApplyChange,
183 193 handleRedoChange,
  194 + handleRemoveDebug,
184 195 getCurrentPageMetaData,
185 196 };
186 197 }
... ...
... ... @@ -22,6 +22,7 @@
22 22 import { Icon } from '/@/components/Icon';
23 23 import { UpdateNodeDrawer } from './src/components/UpdateNodeDrawer';
24 24 import { UpdateEdgeDrawer } from './src/components/UpdateEdgeDrawer';
  25 + import { NodeData } from './types/node';
25 26
26 27 const getId = Number(Math.random().toString().substring(2)).toString(16);
27 28
... ... @@ -46,6 +47,7 @@
46 47 triggerChange,
47 48 handleApplyChange,
48 49 handleRedoChange,
  50 + handleRemoveDebug,
49 51 } = useSaveAndRedo();
50 52
51 53 const { flowActionType } = useRuleFlow({
... ... @@ -72,6 +74,10 @@
72 74
73 75 const getDeleteDisplayState = computed(() => unref(flowActionType.getSelectedElements).length);
74 76
  77 + const getDebugMarker = computed(() =>
  78 + flowActionType.getNodes.value.some((item) => (item.data as NodeData).data?.debugMode)
  79 + );
  80 +
75 81 const handleDeleteSelectionElements = () => {
76 82 flowActionType.removeEdges(unref(flowActionType.getSelectedEdges));
77 83 flowActionType.removeNodes(unref(flowActionType.getSelectedNodes));
... ... @@ -127,7 +133,9 @@
127 133 <Icon class="!text-3xl !text-light-50" icon="mdi:delete" />
128 134 </button>
129 135 <button
  136 + :class="getDebugMarker ? '!bg-orange-600 !opacity-100' : 'opacity-50'"
130 137 class="button-box-shadow w-14 h-14 flex justify-center items-center bg-gray-400 rounded-full opacity-50"
  138 + @click="handleRemoveDebug(flowActionType)"
131 139 >
132 140 <Icon class="!text-3xl !text-light-50" icon="carbon:debug" />
133 141 </button>
... ...