我有一个应该注意路线变化的功能:
$scope.$on('$stateChangeStart', function(next, current) {
// do something
});
如果我在我的路线文件中有其他操作$stateChangeStart
按预期工作。如果没有,就不会被召唤。
.otherwise({
redirectTo: '/'
});
我没有收到任何控制台错误,我觉得我错过了$routeChangeStart
的工作方式。
答案 0 :(得分:1)
You have to listen $stateChangeStart
in a config block otherwise you cannot reach that as it is in controller now (you use scope thats why I am telling this) and controller cannot start without state set...
You can inject $rootScope to config block and listen events...
答案 1 :(得分:-1)
使用$rootScope
它应该是这样的:
$rootScope.$on('$stateChangeStart', function(event){
event.preventDefault();
// add your code here
})