我有一个使用AngularJS构建的Web应用程序,它包括各种路由/控制器/视图/等.
几个视图需要我包含的指令.我注意到,当我更改路径并加载新模板时,旧模板中的指令继续运行.只需创建一个记录到控制台的指令,您将在加载新路由时继续记录它.
有办法避免这种情况吗?这似乎有点浪费内存.
解决方法
必须记住解除绑定在指令中的事件!
例如对于绑定到窗口的resize事件:
$范围.在$( ‘$灭’,函数(){ angular.element($窗口).unbind( ‘调整’);});