Проверка наличия тега # в URL angular - PullRequest
0 голосов
/ 15 апреля 2020

Я пытаюсь увидеть, есть ли в URL какие-нибудь теги #, которые я могу проанализировать следующим образом

this.route.fragment.subscribe(hash => {
  if (hash !== undefined && hash !== null && hash !== "") {
    let result: any = hash.split('&').reduce(function (result: any, item: string) {
      let parts = item.split('=');
      result[parts[0]] = parts[1];
      return result;
    }, {});
});

Мне не нравится, что у меня есть все эти ЕСЛИ , чтобы проверить, есть ли is # , есть ли лучшее решение, чтобы увидеть, есть ли # tag в URL как параметры запроса

this.route.snapshot.queryParamMap.get('value');

Потому что в url у меня есть параметры запроса nad # Кроме того, есть ли способ проверить это, спасибо

1 Ответ

0 голосов
/ 15 апреля 2020

Вы можете использовать URLSearchParams :

this.route.fragment.subscribe(hash => {
  const hashMap = new URLSearchParams(hash);

  const value = hashMap.get('value');
});

Я не совсем уверен, что наблюдаемая fragment возвращает га sh с добавленным #. Если это так, вы должны урезать это первое

...