将参数传递给工厂中的资源以访问控制器中的信息

时间:2014-03-20 22:30:44

标签: angularjs ngresource

所以我使用$ resource建立了一个这样的工厂:

'use strict';

angular.module('hscApp')


  /* ----------------------
  Test- Using channel_id
  ------------------------ */

  .factory('Data', function($resource){

  return {
    retrieve: function() {

          params = {
            status: 'upcoming',
            followed: 1,
            reason: 1,
            views: 1,
            per_page: 2,
            channel_id: 2165604
          };

      return $resource('/api/v1/channel_listings.json', params);
    }
  };
})

API的格式是我在下面列出的内容:

api/v1/channel_listings.json?status=upcoming&followed=1&reason=1&views=1&per_page=2&channel_id=2165604

我“想”我的设置正确,但我不太确定。目标是将动态参数传递到此工厂(即通道ID)。我将控制器设置为:

'use strict';

angular.module('hscApp')
  /* main controller */
  .controller('MainCtrl', function ($scope) {
    $scope.$on('$viewContentLoaded', angularOnLoad);
  })

  .controller('TestCtrl', function(Data){
    $scope.Data = Data.retrieve({
      status: 'upcoming',
      followed: 1,
      reason: 1,
      views: 1,
      per_page: 2,
      channel_id: 216560
    });
    Data.get(function(data){
      $scope.upcomingEvents = data;
    });    
  });

然后我试图通过执行{{event.name}}来显示JSON中的字段,但是我收到的错误是数据未定义。我在这里做错了吗?

0 个答案:

没有答案