我想在angularjs中的每个控制器的开头调用一个服务方法。就像我在asp.net mvc中使用过滤器或在express / nodejs中使用中间件一样。
我应该如何在angularjs中执行此操作?
答案 0 :(得分:0)
我发现了如何做到这一点
AngularJS提供我可以绑定的事件
$onRouteChangeStart
和$onRouteChangeFinish
第一个是在路由更改之前触发的,后一个是在(并且在为控制器解析了所有依赖关系之后)触发的。
所以,为了在每个控制器之前调用代码,我会在我的应用程序中添加这样的代码:
var app = angular.module('MyApp', [...]);
app.run(['$rootScope', function($rootScope) {
$rootScope.$on('$routeChangeStart', function(event, target) {
// CODE GOES HERE
});
}]);