addEventListener требует removeEventListener с той же функцией. Ошибка: element.addEventListener("click", () => {}) — анонимную функцию невозможно удалить. Правильно: const handler = () => {}; element.addEventListener("click", handler); element.removeEventListener("click", handler). AbortController — современный подход: const ac = new AbortController(); el.addEventListener("click", handler, { signal: ac.signal }); ac.abort() удаляет все listeners. В React: useEffect cleanup. { once: true } для одноразовых. Утечка listeners — частая причина memory leak.
Как правильно очищать event listeners?
Middle
190 просмотровAFK Offer AI
Зачем нужны route groups в Next.js?