Angular - перенаправление на основе префикса, но отбрасывание оставшегося несоответствующего пути - PullRequest
0 голосов
/ 12 июня 2018

Мне нужно поддерживать унаследованные пути в моем приложении, но я хочу перенаправить пользователя на новый, правильный путь.Например, у меня есть следующие устаревшие пути:

/legacyRoute/subRoute, /legacyRoute/anotherSubRoute

, и я хочу, чтобы оба из них были перенаправлены на:

/newRoute

Я нашел параметр pathMatch prefix в Angular Docs , но при настройке моего маршрута:

{path: 'legacyRoute', redirectTo: 'newRoute', pathMatch: 'prefix' }

получается путь, которыйвыглядит как /newRoute/subRoute

Это не огромная проблема, страница все еще загружается, как я ожидал, но, тем не менее, беспокоит меня.Есть ли угловой способ перенаправления на основе префикса и отбрасывания чего-либо, что не соответствует?Также было бы хорошо, если бы я мог сохранить параметры строки запроса.

1 Ответ

0 голосов
/ 12 июня 2018

Дангит, нашел решение сразу после публикации.Вы можете указать подчиненный маршрут и ничего с ним не делать, например:

{path: 'legacyRoute/:subRoute', redirectTo: 'newRoute', pathMatch: 'prefix' }

, и это приведет к: legacyRoute/whatever?blah=blah -> newRoute?blah=blah

...