jmdobry / angular-cache

angular-cache is a very useful replacement for the Angular 1 $cacheFactory.
http://jmdobry.github.io/angular-cache
MIT License
1.39k stars 156 forks source link

Issues found in caching, need help #264

Open sundertinwar opened 7 years ago

sundertinwar commented 7 years ago

Hi, I was trying to use this module into my project but not sure it is working properly or not. Below is the code –

angular.module('TrackerApp').factory('TrackerFactory', function ($resource, CacheFactory) {
if (!CacheFactory.get('CenterCache')) {
            console.log('cache does not exists');
              CacheFactory.createCache('CenterCache', {
                maxAge: 5 * 60 * 1000,
                deleteOnExpire: 'aggressive'
              });
        }
        var centerCache = CacheFactory.get('CenterCache');
var CenterClass = $resource(_ServiceBaseURL + 'api/Center/:id',{},{
            query: {
                method: 'GET',
                cache: centerCache,
                isArray:true
            }
         });        
        CenterClass.GetMultipleAsObject = function () { return this.query(); };
return {            
            CenterClass: CenterClass
        };
    });

On loading of app, it does print message in console that “cache does not exists” and it does create cache in local storage “angular-cache.caches.CenterCache.keys” = [http://localhost/Services/Tracker/api/Center] Another key is created “angular-cache.caches.CenterCache.data.http:// localhost/Services/Tracker/api/Center” = mystoredvalue Issues –

  1. On page refresh (f5), I do see the console message printed again and in http calls, I can see “Center” information is getting download, it is not picked from cache.
  2. On navigating from one page to another, I don’t see the console message getting printed. But I do see the "Center” api getting called and data being downloaded.

Am I missing something?

MatheusArleson commented 6 years ago

there is an issue in how the cache is handled in case it is an array. please take a look on my comment on #251