已经与API的东西,整天摔跤,并决定使用Restanglar。 真的有获取数据出来的问题,并为$范围。
据我所知,它不会仅仅是从API返回的JSON,并有一堆其他的内部方法等,但是,当我得到的数据出来,我可以看到它在某处调试陪葬的console.log,但我似乎无法得到它变成$范围在我看来,这是以前工作正常使用它。
我怎样才能得到这些数据,进入我的$范围,因此,我的观点?
模型
angular.module('horse', ['restangular'])
.config(function(RestangularProvider) {
RestangularProvider.setBaseUrl('http://url/api');
RestangularProvider.setResponseInterceptor(
function(data, operation, what) {
if (operation == 'getList') {
return data[what];
}
return data;
});
});
调节器
angular
.module('horse')
.controller("IndexController", function ($scope, Restangular) {
$scope.horse = null;
$scope.showSpinner = true;
Restangular.all('horse').getList().then(function(horse) {
$scope.horse = horse;
console.log($scope.horse);
});
});
API响应
{"error":false,"horse":[{"id":"1","name":"horse 2"},{"id":"2","name":"horse 2"}]}
编辑1
restangular响应
[Object, Object, route: "horse", getRestangularUrl: function, getRequestedUrl: function, addRestangularMethod: function, clone: function…]
编辑2
我也试过这- https://github.com/mgonto/restangular#using-values-directly-in-templates
$scope.horse = Restangular.all('horse').getList().$object;
这只是导致一个空数组被输出。 我还试图除去setResponseInterceptor
以及修改所述API的结构导致直接数据阵列而不元的东西(错误等),没有喜悦:(