检测是否从DOM中删除了指令

ale*_*nst 1 javascript dom angularjs angularjs-directive

我有一个AngularJS指令,如果指令的元素从DOM中删除(从AngularJS调用内部或通过任何其他方法,如jQuery),我需要执行某些操作.

那可能吗?

Abh*_*ain 6

在该指令中,当从DOM中删除元素时,会发出$ destroy事件.在你的指令的链接功能中,你可以这样做: -

element.on('$destroy', function() {
   // do stuff
});
Run Code Online (Sandbox Code Playgroud)

有关更多信息和完整示例,请参阅此处的文档

编辑:看到这个plunker看到$ destroy在行动.在这里,我在2秒后删除元素,并在控制台中记录销毁.