使用params在AngularJS中查询$资源

时间:2015-06-16 17:09:47

标签: angularjs node.js mean-stack

我有一个api,显示两个日期之间的交易列表。 我想将这些数据作为角度资源访问。 当我尝试所发生的事情时,我得到了一堆

GET /trans/12-01-2014/12-02-2014 200 1690ms - 953.2kb
GET /trans 404 1ms
GET /trans 404 1ms
DELETE /trans 404 3ms
POST /trans 404 3ms
DELETE /trans 404 0ms

其次是更多相同的。

它仍然使用按资源提供的额外方法返回数据。 我不想自己查询/转发路由,因为它无效且日期是必需的。

var myApp = angular.module('appServices', ['ngResource','ngRoute']);

myApp.factory('Trans', ['$resource',
  function($resource){

return $resource('/trans/:start/:end',{},{
    query: {method:'GET', isArray:true}
});

  }]);

然后来自controller.js的一些代码

function($scope,$routeParams,$http,Trans){
$scope.trans = [];

$scope.trans =Trans.query({start: $routeParams.start, end:
 $routeParams.end});

任何帮助都会受到赞赏,我是angularjs和node的新手。

1 个答案:

答案 0 :(得分:0)

这是sample fiddle,希望可以帮到你。您需要使用您的其余结构更新id

mod.factory('MyResource', function ($resource) {
    return $resource('http://unboxedtechnology.com/trans/:id/:start/:end',{},{
                query: {method:'GET', isArray:true}
   });
});

这将支持

MyResource.query({start: ... ,end: ...}})
//GET /trans/:start/:end

resourceInstance.$get({id: ... , }})
// GET /trans/:id

resourceInstance.$create({ ... }})
// POST /trans/

resourceInstance.$update({id: ... , }})
// PUT /trans/:id

resourceInstance.$delete({id: ... , }})
// DELETE /trans/id