我有以下方法用于引导"较小的角度应用程序"在一个更大的项目中,目前只在某种程度上转换为angularjs。因此,我们将项目的碎片作为单独的角度应用程序存在。这些是自我引导的:
startMyAngularApp = (element) ->
element.append("<div id='myDirective' 'my-directive' ></div>")
$injector = angular.bootstrap($('#myDirective'), [])
$injector.invoke ($rootScope) ->
$rootScope.$on 'event:closeDialog', (success) ->
$rootScope.$destroy()
$rootScope.$apply()
$(".myButton").on('click', () -> startMyAngularApp(this))
现在。这里的问题是每次点击myButton时都会创建一个新的rootScope。旧的仍然可以通过Batarang使我相信它永远不会被妥善处理。有没有办法确保我们自己清理干净?
到目前为止,我尝试了element.empty()
,angular.element(element).scope().$destroy()
以及类似的绝望尝试。
编辑:通过Batarang尽快创建范围的屏幕截图会有所帮助。