0

我刚开始使用angular-cache并在堆栈溢出时看到了这个问题,用户询问是否在缓存之前调用了 ngResource transformResponse 函数。显然,答案是否定的。

但是,是否有可能没有办法解决这个问题?在我的 API 中,我返回一个包含大量信息的对象(其他对象、数组等,我不需要)。我需要缓存的只是他们的ID。

这怎么可能?这就是我的想法:

app.factory('Operator', function($resource, API_CONFIG_URL, CacheFactory) {
    var opsCache = CacheFactory.get('manageableOperatorsCache');
    return $resource(API_CONFIG_URL+ '/operators/:id', {id: '@id'}, {
        'get': { 
           method:'GET', 
           transformResponse: function(data, headers) { 
              // transform object to this format: ids : [1, 2, 3]
           },
           cache: opsCache
         },
    });
});

谢谢你的帮助 :)

4

1 回答 1

0

作为解决方法,我自己使用CacheFactory.put(key, value)intransformResponse函数填充缓存

于 2015-05-28T17:33:09.637 回答