我正在使用下面的代码监听Angular中的$locationChangeSuccess
:
$scope.$on('$locationChangeSuccess', function(event) {
console.log('Check, 1, 2!');
});
但是,只有当我导航到新链接时,它才会在控制台中记录位置已更改。当然,这是有道理的。我的问题是,在刷新页面的情况下,我如何让Angular侦听 $locationChangeSuccess
?
发布于 2013-04-25 08:12:27
您不能从控制器内注册,因为$locationChangeSuccess在路由匹配和控制器调用之前发生。当你注册时,事件已经被触发了。
但是,您可以在应用程序引导阶段在$rootScope上订阅事件:
var app = angular.module('app', []);
app.run(function ($rootScope) {
$rootScope.$on('$locationChangeSuccess', function () {
console.log('$locationChangeSuccess changed!', new Date());
});
});
发布于 2013-04-25 03:17:06
您可能需要window.onbeforeunload
上的侦听器,它在窗口卸载其资源(刷新)之前被调用。
https://stackoverflow.com/questions/16200239
复制相似问题