функция очистки не работает на карте памяти угловой 8 локальных хранилищ - PullRequest
0 голосов
/ 04 июля 2019

У меня есть приложение angular 8, и в настоящее время я использую пакет @ ngx-pwa / local-storage для локального хранилища.

Я использую storageMap, потому что, как сказано на официальной странице пакета:

"Новый, начиная с версии 8 этой библиотеки, этот API-интерфейс сервиса следует за собственным API-интерфейсом Map и новым готовящимся стандартным API-интерфейсом kv-storage, за исключением того, что он асинхронный с помощью RxJS Observables. Он делает то же самое, что и сервис LocalStorage., но также позволяет выполнять более сложные операции. Если вы знакомы с Map, мы рекомендуем использовать только этот сервис. "

Я смог использовать set, get и keys просто отлично, но сталкиваюсь спроблема с функцией clear (), эта функция, похоже, ничего не делает или, может быть, я использую ее неправильно.Я вызываю clear, а затем после функциональных клавиш и получаю все ключи, чтобы хранилище не было очищено.

Мой код:

import { LocalStorage, StorageMap } from '@ngx-pwa/local-storage';

export class AppComponent {
  constructor(private storageMap : StorageMap ){

    this.storageMap.clear();

    this.storageMap.keys().subscribe({
      next: (key) => {
       console.log(key);
      },
      complete: () => {
       console.log('Done');
    },
  });
}

}}

1 Ответ

1 голос
/ 04 июля 2019

Мне не хватало подписки, моя ошибка.Вот правильная рабочая функция:

  this.storageMap.clear().subscribe({

      next: () => { },
      error: (error) => { }

    });
...