nvm-cache v0.0.17
NvmCache
Библиотека реализует кэширующий объект NvmCache, который предоставляет доступ к загруженному объекту и предоставлет возможность обновления по требованию.
Установка
npm install nvm-cache --saveИмпорт
import { NvmCache } from 'nvm-cache';constructor(action: (id: string) => Observable, ignoreCase: boolean = true)
В констркутор нужно передать метод получения/обновления данных по ключу. Второй параметр опциональный. Задает регистрозависимость идентификаторов/ключей значений
const nvmCache = new NvmCache<Type>((id: string) => this.http.get('http://localhost:4200/type/' + id));get(id: string): NvmSubject
Метод возвращает объект NvmSubject. Jбъект сродни ReplySubject но расширен возможностью однократной подписки, и не отдает предыдущее значение в случае запуска процесса обновления данных. В случае если значение было загружено в кэш ранее отдает значение, иначе запускает процесc получения данных, и после эмитит полученное значение В случае обновления данных все подписчики получат новые значения.
nvmCache.get(id).subscribe(newData => {
// do something
});getOnce(id: string): Observable
Метод возвращает обычный Observable без постоянной подписки. В случае если значение было загружено в кэш ранее отдает значение, иначе запускает процесc получения данных, и после эмитит полученное значение
nvmCache.getOnce(id).subscribe(newData => {
// do something
});refresh(id: string, data?: T): Observable
Метод возвращает обычный Observable без постоянной подписки. Запускает процесс обновления кэша, и, затем, эмитит обновленное значение для всех подписчиков NvmSubject с соответствующим id. В случае если параметр data был заполнен, то обновляет кэш переданным значением, если пустой, то обновляет данные с помошью переданного в конструктор метода.
nvmCache.refresh(id).subscribe();remove(id: string): void
Чистит кэш для переданного идентификатора.
nvmCache.remove(id);clear(): void
Чистит весь кэш.
nvmCache.clear();has(key: string): boolean
Возвращает true/false в зависимости есть ключ/идентификатор в кэкшк или нет.
nvmCache.has(id);keys
Возвращает массив строк - все ключи, для которых есть закэшированные значения.
nvmCache.keys;3 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago