【问题标题】:How to get record count from $resource returned object ?如何从 $resource 返回的对象中获取记录数?
【发布时间】:2015-04-11 18:37:57
【问题描述】:

我正在使用 angular-resource 从服务器获取我的数据,这里是代码

var app = angular.module('app',[...]);

    app.factory('propertiesService', ['$resource', 'CONSTANTS',  function($resource, CONSTANTS) {
        var _default_url = CONSTANTS.HTTP.API_URL+"/properties/get";
        return $resource(_default_url);
    }]);

然后我在我的控制器中得到它

app.controller('propertiesSearchController', ['$scope' ,'$rootScope','propertiesService', function($scope, $rootScope, propertiesService) {
        $scope.properties = propertiesService.get();

    }]);

但现在在我看来,我无法知道它返回了多少条记录的长度

e.g {{ properties.length}}

但是我可以使用 ng-repeat 来获取视图中的数据。

【问题讨论】:

    标签: angularjs count ngresource


    【解决方案1】:

    结果证明这很简单,我返回的是 OBJECT 而不是 ARRAY 并且 .length 不适合它。将其转换为 ARRAY 有效。

    【讨论】:

      【解决方案2】:

      资源服务与回调一起工作,因此正确的做法是(假设您的资源端点正在工作):

      app.controller('propertiesSearchController', ['$scope' ,'$rootScope','propertiesService', function($scope, $rootScope, propertiesService) {
          propertiesService.query(function(data) {
              $scope.prperties = data;
              console.log(data.length);
          });
      
      }]);
      

      【讨论】:

        猜你喜欢
        • 2014-11-21
        • 1970-01-01
        • 1970-01-01
        • 2020-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-05
        • 2020-12-18
        • 2020-05-03
        相关资源
        最近更新 更多