Невозможно получить параметры запроса в Angular4 - PullRequest
0 голосов
/ 08 мая 2018

Я занимаюсь разработкой приложения Angular4 с использованием библиотеки primeng. В одном из моих компонентов у меня есть следующий код:

  navigateUrl(company:any, cause?:boolean) {
    let navigationExtras = {queryParams : {cause: false}};
    let navigateToUrl = '/home/policy/menu/' +
    company.policyId+ '/' + encodeURIComponent(company.name) + '/' +
    company.companyId + '/branches';
    if(cause) {
      let navigationExtras = {queryParams : {cause: true}};
    }
    this.router.navigateByUrl(navigateToUrl, navigationExtras);
  }

Я пытаюсь получить эти queryParams в следующем компоненте меню, например:

this.route.queryParams.subscribe(params => {
      console.log(params);
});

также я пробовал

this.route.queryParams['cause'];

Но что бы я ни пытался, я всегда получаю пустую карту для параметров запроса. Может кто-нибудь указать, где я иду не так.

1 Ответ

0 голосов
/ 08 мая 2018

попробуй

this.router.navigate(['/home/policy/menu/'], navigationExtras); вместо this.router.navigateByUrl(navigateToUrl, navigationExtras);

или попробуйте это

this.router.navigateByUrl(navigateToUrl, navigationExtras.queryParams);

Но вы должны указать правильное название маршрута, поэтому вам нужно проверить, /home/policy/menu/ - это правильное имя маршрута.

...