У меня проблема с маршрутами в приложении Angular 7. У меня есть фрейм страницы, где я хотел бы переключиться на различные компоненты в соответствии с маршрутом без обновления / изменения фрейма главной страницы.
В моей странице страницы у меня есть <router-outlet>
.
Мой основной маршрут http://localhost:4200/login
.
Когда я иду на эту страницу, я хотел бы показать компонент, который связан с этим маршрутом.
Мой второй маршрут, который я хотел бы показать, это http://localhost:4200/forgot-password
.
Я хотел бы видеть на той же странице второй компонент, который связан с формой забытого пароля.
Я пытался добиться этого с детьми, и это работает, но когда я делаю перенаправление, он добавляет /forgot-password
в конце существующего http://localhost:4200/login
URL. В этом случае я всегда получаю http://localhost:4200/login/forgot-password
в URL. Чего я пытаюсь добиться, так это показать в URL http://localhost:4200/forgot-password
, без /login
.
app.routes.ts
// Login Page
{
path: 'login',
component: LoginComponent,
canActivate: [ HTTPSGuard ],
children: [
{
path:'',
component: Login2ComponentComponent,
data: {
animation: 'Sign-In'
}
},
{
path: 'forgot-password',
component: ForgotPassword2Component,
data: {
animation: 'Forgot-Password'
}
}
]
}
В моем компоненте входа в систему у меня есть ссылка:
<a [routerLink]="['/forgot-password']">Go to forgot</a>
Но это добавляет меня к текущему /login
маршруту /forgot-password
.
Может быть, есть атрибут роутера, который я могу использовать в app.routes.ts
, чтобы это произошло?
Спасибо за помощь!