Я согласен с @micronyks и считают, что @ngrx/store является обязательным пакет при разработке Угловое приложения - для государственного управления.
Однако, я считаю, что есть более подходящий пакет для управления кэшем: @ngx-cache/core который содержит Cached
метод декоратора и методу кэширования (has
, get
, set
) с использованием caching API.
В следующем примере показано использование методов API:
anyclass.ts
...
import { CacheService } from '@ngx-cache/core';
@Injectable()
export class AnyClass {
constructor(private readonly cache: CacheService) {
// note that CacheService is injected into a private property of AnyClass
}
// will retrieve 'some string value'
getSomeStringValue(): string {
if (this.cache.has('some-string'))
return this.cache.get('some-string');
this.cache.set('some-string', 'some string value');
return 'some string value';
}
}
И этот пример показывает использование метода Cached
декоратора и CacheKey
PARAMS декоратора:
anyclass.ts
...
import { Cached, CacheKey } from '@ngx-cache/core';
export class AnyClass {
// will retrieve 'some string value'
@Cached('some-string')
getSomeStringValue(): string {
return 'some string value';
}
@Cached('some-string')
getSomeStringValue2(@CacheKey param1: string): string {
return 'some string value: ' + param1;
}
}
...
// these are the first executions
console.log(anyClass.getSomeStringValue2('p1'));
console.log(anyClass.getSomeStringValue2('p2'));
...
// will retrieve 'some string value: p1' from `CACHE`
console.log(anyClass.getSomeStringValue2('p1'));
// will retrieve 'some string value: p1' from `CACHE`
console.log(anyClass.getSomeStringValue2('p2'));
Вот список пакетов, как для клиентской и серверной части кэширования:
Вы считаете «localStorage» браузера? –
У меня есть, но ранее в угловом 1 была предоставлена оснастка, однако я не нашел ничего подобного в ver 2 – nelly2k
Если вы ищете '$ cacheFactory' в' angular2'. Я тоже не мог найти. Но вопрос [this] (http://stackoverflow.com/questions/19304435/local-storage-vs-angularjs-cachefactory) может помочь. –