Browse Source

fix: block not deselect when leaving the tab (#1586)

Ahmad Kholid 1 year ago
parent
commit
0d57b8d8b7
1 changed files with 8 additions and 1 deletions
  1. 8 1
      src/newtab/pages/workflows/[id].vue

+ 8 - 1
src/newtab/pages/workflows/[id].vue

@@ -296,6 +296,7 @@ import {
   computed,
   computed,
   onMounted,
   onMounted,
   shallowRef,
   shallowRef,
+  onDeactivated,
   onBeforeUnmount,
   onBeforeUnmount,
 } from 'vue';
 } from 'vue';
 import cloneDeep from 'lodash.clonedeep';
 import cloneDeep from 'lodash.clonedeep';
@@ -1529,7 +1530,7 @@ function checkWorkflowUpdate() {
 /* eslint-disable consistent-return */
 /* eslint-disable consistent-return */
 function onBeforeLeave() {
 function onBeforeLeave() {
   // disselect node before leave
   // disselect node before leave
-  const selectedNodes = editor.value.getSelectedNodes.value;
+  const selectedNodes = editor.value?.getSelectedNodes?.value;
   selectedNodes?.forEach((node) => {
   selectedNodes?.forEach((node) => {
     node.selected = false;
     node.selected = false;
   });
   });
@@ -1579,6 +1580,12 @@ watch(
   }
   }
 );
 );
 
 
+onDeactivated(() => {
+  const selectedNodes = editor.value?.getSelectedNodes?.value;
+  selectedNodes?.forEach((node) => {
+    node.selected = false;
+  });
+});
 onBeforeRouteLeave(onBeforeLeave);
 onBeforeRouteLeave(onBeforeLeave);
 onMounted(() => {
 onMounted(() => {
   if (!workflow.value) {
   if (!workflow.value) {