Я не совсем уверен, что не так в вашем коде, поскольку мне нужно больше информации, но маршрутизация компонентов в angular выполняется именно так.
В вашем app.module.ts укажите путь иИмена компонентов и добавить его в оператор импорта
import {Router, RouterLink,Routes, RouterModule, RouterLinkActive} from '@angular/router';
import { AppComponent } from './app.component';
import { HomeComponent } from './home/home.component';
import { AboutUsComponent } from './about/aboutus.component';
const routes: Routes =
[
{path:'Home', component: HomeComponent},
{path:'AboutUs',component:AboutUsComponent},
{path: '', redirectTo: 'Home', pathMatch: 'full' } <== this code makes sure Home component opens by default
]
@NgModule({
declarations: [
AppComponent,
HomeComponent,
AboutUsComponent,
],
imports: [
BrowserModule,
RouterModule.forRoot(routes),
],
Затем в вашем app.component.html
<router-outlet></router-outlet>
Причина в том, что ваш app.component.ts имеет определенный тег, такойкак <app-root></app-root>
, который находится в вашем файле index.html, из-за чего он невольно рендерится.Поэтому мы используем app.component.html в качестве файла для размещения тех элементов, которые мы хотим всегда отображать, и <router-outlet>
будет отображать те элементы, которые могут измениться при навигации