我已经广泛地查看了提供给类似问题的一些答案,我知道有一些有趣的东西正在进行承诺和展开,这也记录在restangular项目中,但我不能进入以任何方式获得此调用以返回任何数据。
我的控制器:
angular.module('newClientApp')
.controller('BeerCtrl', function ($scope, Beer) {
Beer.getList().then(function(data) {
$scope.beers = data;
console.log("resp:" + $scope.beers);
});
});
我也在控制器中试过这个变种,因为上面的内容绝对没有任何变化,甚至没有定义:
$scope.beers = Beer.getList().$object;
console.log($scope.beers);
返回[],这个对象的野兽以下面的输出开头,但也列出了Restangular的所有其他方法:(我的数据是否在某处?)
addRestangularMethod:function addRestangularMethodFunction(name, operation, path, defaultParams, defaultHeaders, defaultElem)
all:function all(parent, route)
.... and on and on and on
我的主要模块:
angular
.module('newClientApp', [
'ngRoute',
'restangular'
])
.config(function ($routeProvider, RestangularProvider) {
RestangularProvider.setBaseUrl('http://localhost:8080');
$routeProvider
.when('/beer', {
templateUrl: 'views/beer.html',
controller: 'BeerCtrl',
controllerAs: 'beer'
})
.otherwise({
redirectTo: '/'
})
})
.factory('BeerRestangular', function(Restangular) {
return Restangular.withConfig(function(RestangularConfigurer) {
RestangularConfigurer.setRestangularFields({
id: '_id'
});
});
})
.factory('Beer', function(BeerRestangular){
return BeerRestangular.service('beer') // The actual api resource from whence it pulls
});
我尝试将工厂的退货从.service更改为.all,但没有效果。
我尝试了这个建议,并添加了拦截器,但它也返回了一个数据数组0. Restangular getList() returning empty array
我一直在使用邮递员访问我的api,所以我知道它会返回有效信息。虽然我已经阅读了这篇文章,但它没有帮助。 https://github.com/mgonto/restangular#how-do-i-handle-crud-operations-in-a-list-returned-by-restangular
任何人都可以帮助我获取数据,我会用互联网点回报你:D,永恒的感激。
我也尝试过使用$ resource和$ http但没有成功,但这些都是其他问题。
注意我的主要依赖项如下所示:
"dependencies": {
"angular": "^1.4.0",
"bootstrap": "^3.2.0",
"angular-route": "^1.4.0",
"restangular": "^1.5.2"