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)して自分でキャッシュを作成しますtransformResponse

于 2015-05-28T17:33:09.637 に答える