当我点击 link 到另一个页面时,我希望我的主页被替换,但相反,另一个页面被添加到我的主页
I want my homepage to be replaced when I click on a link to another page, but instead, the other page is added to my home
我正在尝试将第二个页面添加到我的网络应用程序,但第二个页面的 HTML 却添加到了我的主页。为什么?
应用-routing.module.ts
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { OtherPage } from './app.other-page';
const routes: Routes = [
{ path: 'otherpage', component: OtherPage },
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
app.component.html
<!--The content below is only a placeholder and can be replaced.-->
<div style="text-align:center">
<h1 *ngIf="'test' === str">It's true!</h1>
<a [routerLink]="['/otherpage']">Go to Other Page</a>
<router-outlet></router-outlet>
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
})
export class AppComponent {
title = 'angular-test';
}
app.other-page.html
<h1>This is the other page</h1>
app.other-page.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.other-page.html',
})
export class OtherPage {
title = 'angular-test';
}
在示例代码中:"Go to other page" link 在单击时仍在页面上,而我希望其他页面仅包含 app.other-page.html
.
在您的示例中,当您导航到“/otherpage”时,将显示组件 OtherPage 的内容而不是 router-outlet
。
这意味着 router-outlet
周围的所有内容都将始终显示。将 header 放在 router-outlet
之前是有意义的。
有关更多信息,您可以阅读 angular 路由器文档。 https://angular.io/guide/router
我正在尝试将第二个页面添加到我的网络应用程序,但第二个页面的 HTML 却添加到了我的主页。为什么?
应用-routing.module.ts
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { OtherPage } from './app.other-page';
const routes: Routes = [
{ path: 'otherpage', component: OtherPage },
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
app.component.html
<!--The content below is only a placeholder and can be replaced.-->
<div style="text-align:center">
<h1 *ngIf="'test' === str">It's true!</h1>
<a [routerLink]="['/otherpage']">Go to Other Page</a>
<router-outlet></router-outlet>
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
})
export class AppComponent {
title = 'angular-test';
}
app.other-page.html
<h1>This is the other page</h1>
app.other-page.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.other-page.html',
})
export class OtherPage {
title = 'angular-test';
}
在示例代码中:"Go to other page" link 在单击时仍在页面上,而我希望其他页面仅包含 app.other-page.html
.
在您的示例中,当您导航到“/otherpage”时,将显示组件 OtherPage 的内容而不是 router-outlet
。
这意味着 router-outlet
周围的所有内容都将始终显示。将 header 放在 router-outlet
之前是有意义的。
有关更多信息,您可以阅读 angular 路由器文档。 https://angular.io/guide/router