Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angular JS-删除附加了另一个指令/作用域的DOM元素_Javascript_Angularjs_Angularjs Directive_Angularjs Scope - Fatal编程技术网

Javascript Angular JS-删除附加了另一个指令/作用域的DOM元素

Javascript Angular JS-删除附加了另一个指令/作用域的DOM元素,javascript,angularjs,angularjs-directive,angularjs-scope,Javascript,Angularjs,Angularjs Directive,Angularjs Scope,我有一个指令,它将在特定条件下从页面中删除DOM元素。它将首先删除子元素,然后删除父元素。它工作正常,但是如果元素上有另一个指令,我可以看到一些错误出现。我认为这与删除元素后仍然存在的其他指令的范围有关 处理这种事情的正确方法是什么?我是否需要销毁其他指令的范围?删除元素的指令具有继承的作用域,同一元素上的另一个指令通常具有独立的作用域。处理这些情况的标准方法是使用$scope.on('$destroy',function(){}。您应该在导致错误的指令中处理这些事件,而不是删除元素的指令(显然

我有一个指令,它将在特定条件下从页面中删除DOM元素。它将首先删除子元素,然后删除父元素。它工作正常,但是如果元素上有另一个指令,我可以看到一些错误出现。我认为这与删除元素后仍然存在的其他指令的范围有关


处理这种事情的正确方法是什么?我是否需要销毁其他指令的范围?删除元素的指令具有继承的作用域,同一元素上的另一个指令通常具有独立的作用域。

处理这些情况的标准方法是使用
$scope.on('$destroy',function(){}
。您应该在导致错误的指令中处理这些事件,而不是删除元素的指令(显然,最好的方法是使用链接函数)。处理这些情况的标准方法是使用
$scope.on('$destroy',function(){}
。您应该在导致错误的指令中处理这些事件,而不是在删除元素的指令中处理这些事件(显然,最好的方法是使用链接函数)。