diff --git a/packages/vue-flow/src/composables/useVueFlow.ts b/packages/vue-flow/src/composables/useVueFlow.ts index 9c6808b9..3142f289 100644 --- a/packages/vue-flow/src/composables/useVueFlow.ts +++ b/packages/vue-flow/src/composables/useVueFlow.ts @@ -65,6 +65,9 @@ export class Storage { ...toRefs(reactiveState), emits, id, + $destroy: () => { + this.remove(id) + }, } this.set(id, flow) diff --git a/packages/vue-flow/src/types/store.ts b/packages/vue-flow/src/types/store.ts index d382fca0..10d00909 100644 --- a/packages/vue-flow/src/types/store.ts +++ b/packages/vue-flow/src/types/store.ts @@ -189,6 +189,9 @@ export interface Actions extends ViewportFunctions { /** reset state to defaults */ $reset: () => void + + /** remove store instance from global storage and destroy it (will invalidate effect scopes) */ + $destroy: () => void } export interface Getters {