使用参数查询 AngularJS 中的 $resource

Query a $resource in AngularJS with params

我有一个 api 显示 2 个日期之间的交易列表。 我想以 angular 资源的形式访问该数据。 当我尝试时,我得到了一堆

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

后面还有更多相同的内容。

它仍然returns 资源提供的具有额外方法的数据。 我不想自己查询 /trans 路线,因为那是无效的并且需要日期。

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 和节点的新手。

这里有一个 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