Как реализовать маршрутизацию относительного перенаправления с помощью параметров запроса и фрагмента
У меня есть одна проблема в разработке Angular проекта.
Я попытался найти решение о том, как реализовать относительные перенаправления маршрутов с помощью параметра "Когда перенаправления URL-адресов, в котором перенаправление источника имеет свои относительные параметры запроса и fragment.
Например, в руководстве Angular.io.
const heroesRoutes: Routes = [
{ path: 'heroes', redirectTo: '/superheroes' },
{ path: 'hero/:id', redirectTo: '/superhero/:id' },
{ path: 'superheroes', component: HeroListComponent },
{ path: 'superhero/:id', component: HeroDetailComponent }
];
в деталях героя, goback()
функция для возврата обратно к HeroListComponent. я добавил relativeTo: this.route
, Но это не работает.
gotoHeroes(hero: Hero) {
let heroId = hero ? hero.id : null;
// Pass along the hero id if available
// so that the HeroList component can select that hero.
// Include a junk 'foo' property for fun.
this.router.navigate(['/heroes', { id: heroId, foo: 'foo' }], {relativeTo: this.route});
}
При настройке перенаправления на супергероев я не знаю, как реализовать эту функцию.
2 ответа
Вам нужен относительный маршрут, поэтому в зависимости от того, где вы находитесь, это должно сработать, чтобы вернуться:
this.router.navigate(['../', { id: heroId, foo: 'foo' }, {relativeTo: this.route}]);
Вы можете использовать что-то вроде -
this.router.navigate(
['hero','12345'],
{
relativeTo: this.route,
queryParams: {
type: 'value',
},
}
);