1

我想转换 Angular 的 ngResource 的 query() 响应。通过覆盖每个工厂/资源中的方法来做到这一点没有问题,但我怎样才能做到这一点,以便我的转换适用于所有资源中的所有 query() 方法?

我尝试过使用$httpProvider.defaults.transformResponse,但我看不出有什么方法可以区分 query() 调用和所有其他调用。

我想返回分页元数据 - 也许还有另一种更清晰的方法?

4

1 回答 1

1

如果您可以控制端点,则可以添加X-Total-Count标头 ( https://github.com/drahak/Restful#paginator )。然后,您$httpProvider.defaults.transformResponse可以检测标头的存在以解析分页信息。

$httpProvider.defaults.transformResponse.push( function( data, headersGetter ) {
  if( headersGetter('X-Total-Count') ) {
    // CUSTOM PAGING PROCESSING HERE
    console.info('Results Count', headersGetter('X-Total-Count'));
  }

  return data;
});
于 2014-04-14T16:14:56.147 回答