2014-02-28 31 views
1

我已经搜索了其他解决方案,但它不起作用,解决方法是将isArray:true,但它没有工作。我正在与对象顺便说一句。我在控制台中收到这条消息,但一切正常,数据已发送到我的后端api。如何删除该错误?TypeError:Object#<Resource> has no method'push'

app.factory('Category', function($resource, $http) { 
return $resource('http://localhost/api/v1/category/', {id: "@id"}, 
    { 
     update: { 
      method: 'POST', 
      isArray: false 
     }, 
     save: { 
      method: 'PUT' 
     }, 
     query: { 
      method: 'GET', 
      params: {id: '@id'}, 
      isArray: false 
     }, 
     create: { 
      method: 'POST', 
      headers: {'Content-Type': 'application/json'} 
     }, 
     drop: { 
      method: 'DELETE', 
      params: {id: '@id'} 
     } 
    } 
); 
}); 

这里是我的功能

$scope.createInventory = function(){ 
     Inventory.create($scope.newinfo); 
     $scope.info.push(Inventory); 
    }; 

回答

0

$scope.info not a array. You must specify $scope.info to array, then you can push any values to $scope.info.

试试这个

$scope.info=[]; 
    $scope.createInventory = function(){ 
     Inventory.create($scope.newinfo);    
     $scope.info.push(Inventory); 
    }; 
+0

奏效,TNX。快速提问。数据在显示时自动显示,如果我正在处理对象?随着使用推的字符串他们自动显示,有没有解决方案? – user3305175

+0

你需要使用[ng-repeat](http://docs.angularjs.org/api/ng/directive/ngRepeat)将值绑定到html控件 –

+0

我正在像这样做'然后'{{inventory.name}}'或者我应该以其他方式绑定?它在重新加载页面后显示数据 – user3305175

相关问题