Переход от одного компонента к другому сохраняет параметры на URL - PullRequest
0 голосов
/ 28 февраля 2019

В моем приложении есть компонент сведений о сотруднике, и URL выглядит как http://localhost:4200/employee/123 Отсюда, когда я нажимаю кнопку, чтобы вернуться назад, я использовал

this.router.navigate(['/'], { queryParams: { message: this.message }, relativeTo: this.activatedRoute, skipLocationChange: true });

Он отлично работает, и страница переходит к необходимому компоненту (сотрудник-список).Но он сохраняет идентификатор сотрудника 123 на URL, который на самом деле не должен быть и должен выглядеть как http://localhost:4200/employee/.Как я могу сделать это правильно.

Ответы [ 3 ]

0 голосов
/ 28 февраля 2019

Я думаю, что проблема в skipLocationChange.Документация гласит следующее:

skipLocationChanges: Перемещение без добавления нового состояния в историю.

Это именно то, что вы испытываете, я думаю: навигация работает, но ваш маршрут не меняется.Удалите skipLocationChange.

Просмотр этого вопроса здесь : Решением было использование skipLocationChanges для перехода к localhost / canvas без отображения «canvas» в URL.Вы хотите прямо противоположное.Поэтому я думаю, что использование skipLocationChanges: true - это то, что вы не хотите использовать.

0 голосов
/ 28 февраля 2019

Ну, я решил свою проблему, перейдя по ссылке https://angularfirebase.com/lessons/sharing-data-between-angular-components-four-methods/

Это помогает переносить данные между страницами с использованием служб

0 голосов
/ 28 февраля 2019

Вы можете дать this.router.navigate(['../'], {queryParams:'' relativeTo: this.route }); или this.router.navigate(['employee'], {queryParams: '' });

...