我已经在AngularJS中写了一个服务,但是我不能让它工作的角种子的做事的方式。
控制器代码如下:
/*function PhotoCtrl($scope,Photo) { $scope.photos = Photo.query(); }*/ angular.module('myApp.controllers',[]). controller('PhotoCtrl',[function($scope,Photo) { $scope.photos = Photo.query(); }]) .controller('MyCtrl2',[function() { }]);
注意,注释掉部分工作正常,但我想处理它有点像(推荐)第二种方式。
您需要定义照片服务:
angular.module('myApp.controllers',[]) .service('Photo',['$log',function ($log) { return { query: function() { // the query code here. } }; }]) .controller('PhotoCtrl',['$scope','Photo',function ($scope,Photo) { $scope.photos = Photo.query(); }]) .controller('MyCtrl2',[function() { }]);
几个参考:
> http://docs.angularjs.org/api/angular.Module
> http://docs.angularjs.org/api/AUTO.$provide#service
在上面的示例代码中,我使用参数别名,我建议为了避免在缩小代码时出现问题。
另请参见示例:
AngularJS multiple uses of Controller and rootScope
和一个Plunker在这里:
http://plnkr.co/edit/Bzjruq