当尝试从mongoDB返回单个项目时,我不断收到错误,告诉我我正在返回一个与对象相关的数组。这是我的服务代码:
resource: $resource('http://localhost:8080/api/item/:itemId', null, {'get' : {method: 'GET'}}, {stripTrailingSlashes: false})
function getItem(itemId) {
return this.resource.get({itemId: itemId}).$promise.then(function(resource){
return resource;
});
}
以上服务被称为解决方案如下:
.state('cocktail', {
templateUrl: 'client/app/features/item/item/item.html',
controller: 'ItemController',
controllerAs: 'vm',
data:{
title: 'Item'
},
params:{
itemId: null
},
resolve:{
item: getItem
}
function getItem($stateParams, itemService) {
return itemService.getItem($stateParams.itemId);
}
然后在我的控制器中:
ItemController.$inject = ['itemService', 'item'];
function ItemController(itemService, item) {
var vm = this;
vm.item = item;
}
通话中返回的对象是:
[
{
"_id": "57586f25661d33fe21057866",
"name": "Red Velvet",
"description": "Red Velvet Description here",
"image": "red-velvet",
"__v": 0,
"gred": []
},{
"_id": "57586f25661d33fe21057884",
"name": "Red Item",
"description": "Red Velvet Item here",
"image": "red-velvet-item",
"__v": 0,
"gred": []
},
]
我在控制台中遇到的错误是 - [$ resource:badcfg]操作get
的资源配置出错。包含一个对象但得到一个数组的预期响应。我不期待一个数组,但我在解析中传递了ID的对象。如果有人有任何意见或可以看到我做错了什么,请告诉我!这让我烦恼,我知道这将是一个简单的解决方法哈哈!