我有一个使用$ resource的工厂但是不能使用生成的未定义对象 我已经看到很多关于这个问题的反应,我越来越困惑
这是我的工厂
angular.module('contrats')
.factory('Contrats', ['$resource',
function($resource) {
return $resource('contrats/:contratId', { contratId: '@_id'}, {
update: {method: 'PUT'},
});
}
]);
这是我的控制器
// Contrats controller
var app = angular.module('contrats')
.controller ('ContratsController',
['$scope' , '$stateParams', '$location', 'Authentication', 'Contrats', function($scope, $stateParams, $location, Authentication, Contrats)
{
$scope.contrats = Contrats.query();
$scope.nbctrt = $scope.contrats.length;
})];
$ scope.contrats.length =>生成错误无法获取未定义的属性
我坚持了好几天并且不明白感谢您对新手的建议
答案 0 :(得分:0)
澄清我的评论。
在成功函数中添加日志,以便在记录之前完成查询,如下所示
$scope.contrats = Contrats.query(function(success) {
// response from query
console.log(success);
// length of $scope.contrats
console.log('nb contrats',$scope.contrats.length);
// first item in $scope.contrats
console.log('contrats[0]:' , $scope.contrats[0]);
}, function(error){
console.log(error);
});