【发布时间】:2014-07-27 09:56:57
【问题描述】:
我对 Angular 非常陌生,并试图创建一个控制器来获取属于当前用户的所有 Snod。我已经包含了我的 CurrentUserController 以供参考,但我的问题实际上是关于 SnodController,是我注入 CurrentUser 并正确嵌套调用的方式,因为虽然它可以工作,但在我看来是错误的。
抱歉,如果这是一个需要辩论和违反规则的问题,但我想知道我的方法是否朝着正确的方向前进。
var apiService = angular.module("apiService", ['ngResource']);
apiService.factory('CurrentUser', function($resource) {
return $resource( "http://snodbert/api/v1/users/current/", {});
});
apiService.factory('Snod', function($resource) {
return $resource
( "http://snodbert/api/v1/snods/:filter/:filterid", {}
, { 'update': { method:'PUT' }
}
);
});
function CurrentUserController($scope, CurrentUser) {
var user = CurrentUser.get(function() {
$scope.user=user;
}
);
}
function SnodController($scope, Snod, CurrentUser) {
var user = CurrentUser.get(function() {
var items = Snod.get( {filter:'owner', filterid: user.id},
function() {
$scope.items=items.data;
});
});
}
【问题讨论】:
-
你为什么认为这是错误的?
-
自发布以来,我不确定我是否这样做。我更面向对象而不是函数式程序员,所以嵌套调用似乎不自然。我只是想避免犯新手错误,以后不得不全部取消。
标签: angularjs angularjs-resource