0

リソースにキャッシングを追加しようとしていますが、呼び出しごとに新しい ajax リクエストが作成されます。ここ:

app.factory('States', function($resource,$locale,$cacheFactory) {
    var cache = $cacheFactory('statesCache');
    var StatesService = $resource( "api/ref/states-:country", {}, {
        query: {
            cache: cache, //With true it doesn't work either
            method: 'GET',
            isArray: true
        }
    });
    return {
        getList: function( country ) {
        console.log( cache.info() );
            return StatesService.query({
                country: (country || "CA").toLowerCase()
            });
        }
    }
});

を呼び出すたびにStates.getList( "CA" );、新しい Http リクエストがトリガーされます。カスタム キャッシュ サイズがまだ 0 であるたびに、コンソールに次のように表示されます。Object {id: "statesCache", size: 0}

角度バージョンv1.2.0-rc.3 です1.0.8でした

4

1 に答える 1

1

問題は、Chrome が角度ファイルのキャッシュを無効にしなかったことです。それはまだangular 1.0.8をロードしていました。

キャッシュを消去し、適切に更新された angular-resource バージョンが動作するようになりました。

于 2013-11-08T09:42:16.897 に答える