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;
2 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago