我需要能够在不引起内存泄漏的情况下动态加载/卸载角度应用程序。在jQuery中你可以做$(“#elementHoldingMyWidget”)。remove();并且正确的销毁代码被执行,事件处理程序是未绑定的。
我无法找到任何有角度的文档,提到一旦应用程序被启动,可能会撕毁应用程序。
我的第一个尝试就是毁坏rootScope,如:
var rootScope = $("body").scope(); rootScope.$destroy();
但是这似乎并没有起作用,我不知道注射器和服务如何被清理,即使是这样。
该怎么做?
更新2013年3月10日:我发现$(‘body’)。empty();不会拆除应用程序。它还活着
原文链接:https://www.f2er.com/angularjs/145020.html原始帖子:
那么这个帖子:https://github.com/angular/angular.js/issues/1537#issuecomment-10164971声称没有’官方’的应用程序拆掉(在写作时),但你可以只是清空持有应用程序的元素:
$('body').empty();
如果这不是您正在寻找的,您可以通过这些步骤临时解决您的应用程序:
https://github.com/angular/angular.js/issues/1537#issuecomment-10184033