在AngularJS中,在当前范围内触发$destroy
后,是否有可能延迟从DOM中移除元素?
我的目的是在$destroy
事件之后将元素保留在DOM中,直到发生某些事情。 ngAnimate
在执行离开动画时执行类似操作,它会使元素保持活动状态。直到动画完成并且它仅在之后销毁它。是否有可能实现相同的行为没有 ngAnimate
?也许在$scoope.$on("$destroy", ...)
中使用类似承诺的东西?
我尝试过这段代码,显然没有用:
scope.$on "$destroy", ->
deferred = $q.defer()
setTimeout ->
deferred.resolve true
, 400
deferred.promise
答案 0 :(得分:1)
我认为$destroy
事件是在响应元素从DOM中删除而触发的,而不是相反。
也许真正的解决方法是避免首先删除元素。例如,您是否可以显示/隐藏元素而不是删除基础数据?