我是AngularJS的新手。如何处理来自包含根节点的$resource
的服务器响应?
我使用$resource
从后端获取User
,如下所示:
var User = $resource('/user/:id', {id:'@id'});
$scope.user = User.get({id: 1});
如果回复看起来像{ firstName: "Foo", lastName: "Bar" }
,我可以照常与User
中的{{user}}
进行互动。
现在,如果响应包含根节点,例如{ user: { firstName: "Foo", lastName: "Bar"
,我需要{{user.user}}
与User
进行交互。我试过$scope.user = User.get(1).user
但没有成功。
答案 0 :(得分:2)
试试这个:
var User = $resource('/user/:id', {id:'@id'});
User.get({id: 1}).$promise.then(function(response){
$scope.user = response.user;
});
答案 1 :(得分:0)
JSON { firstName: "Foo", lastName: "bar" }
描述了包含属性firstName
和lastName
JSON { user: { firstName: "Foo", lastName: "Bar"}}
描述了包含属性user
的对象,该对象包含属性firstName
和lastName
直接从第二个JSON访问user
您应该执行以下操作:
User.get({id: 1}).$promise.then(function(response){
$scope.user = response.user;
});
通过这种方式,您将响应对象的user
属性分配给范围的属性user
。