当我为每个不同的.when('/search/:searchString', {
加载页面时,通过:searchString
设置包含命名组的routeprovider时,它会加载一个新的控制器实例。
当我有$rootScope.$on('searchUpdated',
因为它对控制器的每个实例上的广播消息做出反应时,这会导致我出现问题。
有没有办法让它只加载一个控制器并为每个请求使用相同的控制器,如果没有办法在页面离开时销毁控制器。
答案 0 :(得分:1)
面对类似问题的任何人:
控制器被销毁,但$rootScope
上注册的侦听器仍然存在,因为$rootScope
永远不会被销毁。
问题似乎是你在每个控制器实例的$rootScope
上注册一个监听器。