https://docs.angularjs.org/guide/directive
При прослушивании этого события вы можете удалить прослушиватели событий, которые могут вызвать утечку памяти. Слушатели, зарегистрированные в области и элементы, автоматически очищаются при их уничтожении, но если вы зарегистрировали прослушиватель в службе или зарегистрировали прослушиватель на DOM node, который не удаляется, вам придется его очистить или вы рискуете ввести утечку памяти.
Лучшая практика: директивы должны очищаться после себя. Вы можете использовать element.on('$ destroy',...) или scope. $On ('$ destroy',...) для запуска функции очистки при удалении директивы.
Вопрос:
У меня есть element.on "click", (event) ->
внутри моей директивы:
- Когда директива уничтожена, есть ли ссылки на память для
element.on
, чтобы сохранить ее от сбора мусора? Документация - Angular гласит, что я должен использовать обработчик для удаления прослушивателей событий в событии
$destroy
. У меня создалось впечатление, чтоdestroy()
удалены прослушиватели событий, не так ли?