Angularjs 如何在angular中看到即将到来的资源参数?

Angularjs 如何在angular中看到即将到来的资源参数?,angularjs,Angularjs,我有一个问题 $scope.product_detail = Source1.get({ FirmId: $routeParams.firmId, ProductId: id }); 通过此查询,您可以获得以下信息: 资源{$get=function(),$save=function(),$query=function(),更多…} 如何查看此资源的属性,例如$scope.product\u detail.id,coz console.log($scope.product\u det

我有一个问题

$scope.product_detail = Source1.get({ 

FirmId: $routeParams.firmId, 
ProductId: id 

});
通过此查询,您可以获得以下信息: 资源{$get=function(),$save=function(),$query=function(),更多…}


如何查看此资源的属性,例如
$scope.product\u detail.id
,coz console.log($scope.product\u detail.id)为我提供“未定义”?

此资源的
get
方法是异步的。假设您的REST后端返回
{id:123}
,则在收到您的REST响应后,它将立即在
产品详细信息
上可用

如果在调用
get
后立即尝试访问它,您将看不到您的值,因为它们尚未收到

get
函数可以执行
success
error
回调:

Source1.get({}, function(response) {}, function(error){});

response
的值将与
$scope.product\u detail
的引用相同,因此回调是不必要的。。。除非您希望在返回时特别执行代码

我认为您正在尝试在它可用之前显示它。您可以让它在成功回调中显示数据

$scope.product_detail = Source1.get({     
  FirmId: $routeParams.firmId, 
  ProductId: id },
  function(resource) {
    console.log(resource.product_detail.id);
});

谢谢,但如何检查它何时“可读”?mb angular中是否有.when()函数?请参见编辑。您可以传递
success
回调。您只需要在收到数据后调用一些代码。如果您只是绑定,那么回调是不必要的。谢谢您的回答,但这会告诉我“Error:resource.product_detail未定义”(@user2560165)如何显示它取决于资源的返回方式。