Czy CacheFactory w angularjs jest singletonem?

Stworzyłem usługę przy użyciu CacheFactory. Spodziewałem się, że będzie to singleton. Wprowadzam go do kontrolera i działa dobrze w zakresie kontrolera. Ale kiedy przejdę na inną stronę z innym zakresem, nie wydaje mi się, aby wartości w pamięci podręcznej, które zapisałem w tym samym kontrolerze, były w innym zakresie. Czy zachowanie CacheFactory nie powinno być singletonem, w którym mam te same buforowane obiekty wszędzie, gdzie wstrzykuję CacheService?

To jest moja usługa jako przykład:

angular.module('MyService', []).factory('CacheService', function($cacheFactory) {
        return $cacheFactory('cacheService', {
            capacity: 3 // optional - turns the cache into LRU cache
        })
    });

W moim kontrolerze:

function MyController($scope, CacheService) {
   var results= CacheService.get('storedvalue');
   if(!results){
       CacheService.put('storedvalue', results);
      alert('results not stored');
   }
   else
      alert('results stored');
}

questionAnswers(1)

yourAnswerToTheQuestion