В настоящее время у меня есть маршруты, настроенные что-то вроде
const routes: Routes = [
{path: "", redirectTo: "route1", pathMatch: "full"},
{path: "route1", children: [
{path: "", redirectTo: "subRoute1", pathMatch: "full"},
{path: "subRoute1", component: SubRouteComponent}
]}
]
, который перенаправляет на {domain} / route1 / subRoute1 с доступом только к {domain}.
Тогда в моих компонентах у меня есть что-то как
<a [routerLink]="['/route1/subRoute1']">Link</a>
=================================== *
МОЯ ПРОБЛЕМА :
====================================
Я хочу добавить новый root URL-путь ко всему приложению, который применяется ко всем маршрутам, , но я не хочу, чтобы go изменил все [routerLink] экземпляры, чтобы указывать на этот новый путь .
Так, например, я хочу изменить маршрутизацию следующим образом, где site1 - это новый root путь URL:
const routes: Routes = [
{path: "", redirectTo: "site1", pathMatch: "full"},
{path: "site1", children: [
{path: "", redirectTo: "route1", pathMatch: "full"},
{path: "route1", children: [
{path: "", redirectTo: "subRoute1", pathMatch: "full"},
{path: "subRoute1", component: SubRouteComponent}
]}
]}
]
И тогда мне придется изменить routerLinks на
<a [routerLink]="['/site1/route1/subRoute1']">Link</a>
Насколько я знаю, мне придется изменить все экземпляры [routerLink] в коде, чтобы отразить это новое изменение пути URL КОГО Я ПЫТАЮСЬ ИЗБЕГАТЬ .
Я мог бы потенциально иметь сотни ссылок [routerLink], помимо необходимости часто менять этот путь root.
Решение, над которым я сейчас пытаюсь работать, заключается в обнаружение вызова маршрутизации «NavigationStart» и изменение пути в этой точке для добавления нового root пути, но я не думаю, что он будет работать так, как я надеялся.
Кроме того, это еще один способ обработка: https://angular.io/guide/router#changing -героев-супергероев
Но я хочу избежать раздутой конфигурации маршрутизации.