2015-10-09 29 views
0

我到处研究这个问题,但没有解决方案为我工作。 是这样的:Error: [$resource:badcfg] Error in resource configuration. Expected response to contain an array but got an object?预期的响应包含一个数组,但得到了一个GET

我仍然收到错误的配置错误。有人可以帮我解决这个问题,谢谢。

厂:

angular.module('lensApp') 
     .factory('LensResource', function($resource) { 
     return $resource(
      'api/lens', 
      null, 
      {'query': {method:'GET', isArray: false}} 
     ); 
    }); 

服务:

var params = {}; 
params['id[]'] = [1,2]; 
LensResource.query(params, function(data) { 
    console.log(data);  
}, function(error) { 
     console.log("error"); 
});  

回答

0

错误是在你的工厂。您不应该通过null作为第二个参数。

$resourceparamDefaults是可选的,它只能是一个对象。如果你在这里通过null,角度将不会被视为paramDefaults。它会假定没有paramDefaults,null是actions参数,并且您的第三个参数将被视为options而不是actions。这样,$资源将使用默认实现的查询,这需要数组。

为了修复它,请传递空对象({})而不是null

相关问题