为了完整起见,这是一个带注入的服务示例:
app.service('<service>', ['$http', function($http) { this.foo = function() { ... } }]);
是的,您可以使用依赖注入过滤器和指令
例如:
过滤:
app.filter('<filter>', ['$http', function(http){ return function(data){ } }]);
指示:
app.directive('<directive>', ['$http', function(http){ return { .... } }]);
服务:
app.factory('<service>', ['$http', function(http) { var shinyNewServiceInstance; return shinyNewServiceInstance; }]);
虽然已经存在的答案是正确和有效的,但john papas角度风格指南有利于使用 $inject 服务 Y091 :
$inject
app.filter('<filter', MyFilter); MyFilter.$inject = ['$http']; function MyFilter() { return function(data) { } }
app.directive('<directive>', MyDirective); MyDirective.$inject = ['$http']; function MyDirective() { return { ... } }
厂:
app.factory('<factory>', MyFactory); MyFactory.$inject = ['$http']; function MyFactory() { var shinyNewServiceInstance; return shinyNewServiceInstance; }
app.service('<service>', MyService); MyService.$inject = ['$http']; function MyService() { this.foo = foo; function foo(){ ... } }