我设置了一个服务,它使用了返回json的rails api。请求根据控制台输出返回:
Resource {tests: Array[4], $promise: Promise, $resolved: true}
我所遇到的问题是在我看来并没有显示出来。我是否需要以某种方式转换返回的结果?当我通过邮递员ping那条路线时,我得到了一个json对象作为我的结果集。
我有以下设置:
/service/test.js
angular.module('myApp')
.factory('Test', function($resource) {
return $resource('http://api.myapp-dev.com:3000/tests/:id', { id: '@_id' },
{
'index': {
method:'GET',
headers: {
'Authorization':'<a token>'
},
isArray: false
}
});
});
/controllers/tests.js
angular.module('myApp')
.controller('TestsCtrl', function ($scope, Test) {
$scope.tests = Test.index();
});
视图/ tests.html
<div>
<ul ng-repeat="test in tests">
<li>{{ test.value }}</li>
</ul>
</div>
答案 0 :(得分:0)
您应该在控制器中执行以下操作。
Test.index(
function(response) {
$scope.tests = response.tests;
},
function(error) {
}
)
还有其他方法可以做到这一点。
Test.index().$promise.then(
function(response) {
$scope.tests = response.tests;
},
errorCallback
)