hidden nodes dont crash application on unmount anymore, hidden elements get correctly unobserved

This commit is contained in:
peterkogo
2024-04-03 09:59:27 +02:00
parent d775012e1b
commit a1fd1aee9c
@@ -58,7 +58,7 @@
const nodeType = type || 'default'; const nodeType = type || 'default';
let nodeRef: HTMLDivElement; let nodeRef: HTMLDivElement;
let prevNodeRef: HTMLDivElement; let prevNodeRef: HTMLDivElement | null = null;
const nodeTypeValid = !!$nodeTypes[nodeType]; const nodeTypeValid = !!$nodeTypes[nodeType];
@@ -129,11 +129,16 @@
resizeObserver?.observe(nodeRef); resizeObserver?.observe(nodeRef);
prevNodeRef = nodeRef; prevNodeRef = nodeRef;
} }
} else if (prevNodeRef) {
resizeObserver?.unobserve(prevNodeRef);
prevNodeRef = null;
} }
} }
onDestroy(() => { onDestroy(() => {
resizeObserver?.unobserve(nodeRef); if (prevNodeRef) {
resizeObserver?.unobserve(prevNodeRef);
}
}); });
function onSelectNodeHandler(event: MouseEvent | TouchEvent) { function onSelectNodeHandler(event: MouseEvent | TouchEvent) {