Угловой маршрутизатор: как перенаправить на компонент на основе части routerlink

#javascript #angular #typescript #angular-routing

#javascript #угловатый #typescript #angular-маршрутизация

Вопрос:

В моем приложении Angular

я использую этот файл маршрутизации :

 const routes: Routes = [
  {
    path: "",
    children: [
      {
        path: "",
        redirectTo: "/my-default-page",
        pathMatch: "full"
      },
      {
        path: "reset_password",
        component: ResetPassword,
        canActivate: [MyAuthGuard],
        children: [{ path: "**", redirectTo: "/reset_password" }]
      }
    ]
  }
}
];
 

я не хочу проходить мимо перенаправления, и что, когда маршрут: будет выглядеть примерно так :

 /reset_password/blabalabla
 

он не перенаправит меня, а просто загрузит компонент ResetPassword и сохранит URL-адрес таким, какой он есть

Предложения?

Комментарии:

1. не могли бы вы уточнить проблему, что происходит, что требуется, что такое перенаправление, о котором вы упоминаете? с помощью стекблита.

Ответ №1:

Используйте параметры маршрута. Тогда вам не нужны никакие дочерние маршруты.

 {
    path: "reset_password/:id",
    component: ResetPassword,
    canActivate: [MyAuthGuard]
  }
 

Ваша ссылка останется прежней, и если вы хотите, вы можете получить этот параметр из ссылки, используя следующий код в вашем компоненте ResetPassword

 constructor(private route: ActivatedRoute){}

ngOnInit():void{
const id = this.route.snapshot.paramMap.get('id');
}