我刚刚开始使用Angular并尝试调整我一直关注的教程。
我的资源定义为:
.factory('Session', function ($resource) {
return $resource('http://localhost/api/sessions');
});
我正在尝试使用这样的控制器来响应:
.controller('SessionsCtrl', function($scope, Session) {
$scope.sessions = Session.query();
})
我遇到的问题是JSON响应的格式包含子属性中的会话:
{
sessions: [
{
id: 1,
title: "Welcome"
{
id: 2,
title: "Session 1"
}
]
}
如何让资源看作会话属性?
答案 0 :(得分:0)
如果您的服务是发送对象而不是数组,则应在其声明中添加 isArray:false :
yourApp.factory('Session', function ($resource) {
return $resource(
'http://localhost/api/sessions',
{},
{'query': {method: 'GET', isArray: false }}
);
});
在您的控制器中,您可以使用回调:
yourApp.controller('SessionsCtrl', function($scope, Session) {
$scope.sessions = Session.query(function(result) {
return result.sessions;
});
});