如何处理通过$resource get 发送的参数?

How to process parameter sent through $resource get?

在控制器中:

MyService.get({queryParameter:'MyQueryParameter'}).$promise.then(function(result){
  return result; 
};

在我的服务中:

$resource('/api/path',{
  queryParameter: (function process(queryParameter) {
    //process queryParameter
    return processed_query_parameter;
  })('@queryParameter'),
});

试图模拟它通常做的事情:

queryParameter: '@queryParameter'

但这似乎不起作用。也不是这个:

$resource('/api/path',{
   queryParameter: (function process(queryParameter) {
     //process queryParameter
     return processed_query_parameter;
   })(@queryParameter),
});

或者这样:

$resource('/api/path',{
   queryParameter: (function process(queryParameter) {
     //process queryParameter
     return processed_query_parameter;
   })(queryParameter),
});

那么,如何访问传递的参数,并在赋值之前对其进行处理?

请参阅文档。

https://docs.angularjs.org/api/ngResource/service/$resource

试一试:

MyService.get({queryParameter:'MyQueryParameter'}).then(function(result){
  return result; 
};

$resource('/api/path');

尝试这样的事情:

angular.module('app').service('MyService', ['$resource', function MyService($resource) {
var rs = $resource('http://localhost:8080/api');

    rs.getPersonalized(params){
        var customParams = {
            queryParameter: params.id
        }
        return rs.get(customParams);
    }

    return rs;
}]);