2015-11-19 81 views
0

如果我console.log$resource,我回来了一些东西,我不明白。

$scope.results = $resource(url, {}, {withCredentials: true}).query(function(arg) { 
    console.log(arg); 
}); 

回报:

LOG: [d{id: '4', foo: 'bar'}] 

什么是数组中的 'd' 的意思吗?

+0

代码审查欢迎留言。我相信我可以改进我的工作:)。 – Rimian

+0

目前尚不清楚,但是控制台输出如上所示的'console.log(arg)'的结果,或者其他控制台命令没有显示? – Phil

+0

这是当我运行茉莉花规格时的输出:) – Rimian

回答

0

您执行一个异步函数,并且该函数不返回实际数据,它返回一个承诺。承诺答复后会得到解决。

看看that postanother one

长话短说:您必须指定一个将在承诺解决方案上调用的函数。

在您的例子:

$resource(url, {}, {withCredentials: true}).query(function(data) { 
    $scope.results = data; 
}); 

或:

$resource(url, {}, {withCredentials: true}).query().$promise.then(
    function(data) { 
     $scope.results = data; 
    } 
); 

如果我没有记错的是API。

+1

'$ resource'操作不会** *“返回承诺”*。它们返回一个空的实例,当异步操作解析时,该实例稍后会填充数据。 – Phil

+0

对不起,你是对的。 我一般使用$ http,所以这显然是一个错误。 –