【发布时间】:2014-07-22 07:58:29
【问题描述】:
我想在 angularjs 中每个控制器的开头调用一个服务方法。就像我在 asp.net mvc 中使用过滤器或在 express/nodejs 中使用中间件一样。
我应该如何在 angularjs 中做到这一点?
【问题讨论】:
标签: asp.net-mvc angularjs filter
我想在 angularjs 中每个控制器的开头调用一个服务方法。就像我在 asp.net mvc 中使用过滤器或在 express/nodejs 中使用中间件一样。
我应该如何在 angularjs 中做到这一点?
【问题讨论】:
标签: asp.net-mvc angularjs filter
我发现了如何去做。
AngularJS 提供了我可以绑定的事件。$onRouteChangeStart 和 $onRouteChangeFinish
第一个在路由更改之前触发,后者在之后(并且在为控制器解决所有依赖项之后)。
所以,为了在每个控制器之前调用代码,我会在我的应用程序中添加类似这样的内容:
var app = angular.module('MyApp', [...]);
app.run(['$rootScope', function($rootScope) {
$rootScope.$on('$routeChangeStart', function(event, target) {
// CODE GOES HERE
});
}]);
【讨论】: