Мое приложение имеет несколько MutationObservers , прикрепленных к элементам DOM внизу дерева DOM. Они должны определить, когда кто-либо из их предков был удален из DOM.
Использовать MutationObservers просто, чтобы определить, был ли удален определенный элемент или какой-либо из его дочерних элементов. Тем не менее, каков наилучший способ определить, удалены ли какие-либо элементы из родительских элементов?
Вот плункер , который демонстрирует проблему. Заметьте, что во вкладыше, когда вы нажимаете «Удалить родителя», вызывается наблюдатель мутации родительского элемента. Однако наблюдатель дочернего элемента не является.
Как мне эффективно использовать MutationObservers для проверки, когда узел удален из документа?
Редактировать
Мой вариант использования заключается в том, что я реализовал некоторые веб-компоненты, которые должны вызывать код очистки, когда они (или один из их родителей) удаляются из DOM. Я хочу, чтобы каждый веб-компонент был инкапсулирован так, чтобы он выполнял свою собственную очистку и не было глобального реестра (кроме собственного window.customElements
).