当我通过.when('/search/:searchString', {
设置包含命名组的routeprovider时,当页面为每个不同的:searchString
加载时,它会加载分配的控制器的新实例。
这导致我有一个问题,当我有一个$rootScope.$on('searchUpdated',
,因为它对控制器的每个实例上的广播消息作出反应。
是否有一种方法可以使它只加载一个控制器并对每个请求使用相同的控制器,如果没有,是否有一种方法可以在页面离开时销毁控制器
对于遇到类似问题的人:
控制器被销毁,但是在$rootScope
上注册的侦听器仍然存在,因为$rootScope
从未被销毁。
问题似乎是你在$rootScope
上从每个控制器实例注册一个监听器。