File tree Expand file tree Collapse file tree 2 files changed +11
-8
lines changed
packages/core/src/composables Expand file tree Collapse file tree 2 files changed +11
-8
lines changed Original file line number Diff line number Diff line change
1
+ ---
2
+ " @vue-flow/core " : patch
3
+ ---
4
+
5
+ Skip resize handler if node is not visible.
Original file line number Diff line number Diff line change @@ -15,14 +15,12 @@ export function useResizeHandler(viewportEl: Ref<HTMLDivElement | null>): void {
15
15
let resizeObserver : ResizeObserver
16
16
17
17
onMounted ( ( ) => {
18
- const rendererNode = viewportEl . value
19
-
20
18
const updateDimensions = ( ) => {
21
- if ( ! rendererNode ) {
19
+ if ( ! viewportEl . value || ! ( viewportEl . value . checkVisibility ( ) ?? true ) ) {
22
20
return
23
21
}
24
22
25
- const size = getDimensions ( rendererNode )
23
+ const size = getDimensions ( viewportEl . value )
26
24
27
25
if ( size . width === 0 || size . height === 0 ) {
28
26
emits . error ( new VueFlowError ( ErrorCode . MISSING_VIEWPORT_DIMENSIONS ) )
@@ -34,16 +32,16 @@ export function useResizeHandler(viewportEl: Ref<HTMLDivElement | null>): void {
34
32
updateDimensions ( )
35
33
window . addEventListener ( 'resize' , updateDimensions )
36
34
37
- if ( rendererNode ) {
35
+ if ( viewportEl . value ) {
38
36
resizeObserver = new ResizeObserver ( ( ) => updateDimensions ( ) )
39
- resizeObserver . observe ( rendererNode )
37
+ resizeObserver . observe ( viewportEl . value )
40
38
}
41
39
42
40
onBeforeUnmount ( ( ) => {
43
41
window . removeEventListener ( 'resize' , updateDimensions )
44
42
45
- if ( resizeObserver && rendererNode ) {
46
- resizeObserver . unobserve ( rendererNode ! )
43
+ if ( resizeObserver && viewportEl . value ) {
44
+ resizeObserver . unobserve ( viewportEl . value ! )
47
45
}
48
46
} )
49
47
} )
You can’t perform that action at this time.
0 commit comments