ngResource返回一个单数项

时间:2016-06-09 18:47:19

标签: angularjs node.js ngresource

当尝试从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的对象。如果有人有任何意见或可以看到我做错了什么,请告诉我!这让我烦恼,我知道这将是一个简单的解决方法哈哈!

0 个答案:

没有答案