Angular路由跳转home路径成功但对应组件HTML内容不显示问题求助
- 首先检查
AppModule的declarations数组中是否已添加HomeComponent,仅在路由文件中导入组件不足以让Angular完成渲染,必须在对应模块的声明数组中注册组件,示例配置如下:
// app.module.ts import { NgModule } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component'; import { HomeComponent } from './home/home.component'; // 导入组件 @NgModule({ declarations: [ AppComponent, HomeComponent // 必须添加到声明数组 ], imports: [ BrowserModule, AppRoutingModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }
- 检查是否是导航栏遮挡导致内容不可见:你使用了Bootstrap的
fixed-top导航栏,该类会让导航栏脱离普通文档流,下方的容器内容会被导航栏覆盖,你可以给存放<router-outlet>的容器添加上边距即可,修改app.component.html的容器样式:
<div class = "container" style="padding-top: 70px;"> <router-outlet></router-outlet> </div>
- 打开浏览器开发者工具的控制台面板,检查是否有报错信息:如果组件模板有语法错误、依赖注入失败等问题,也会导致组件无法正常渲染,控制台会给出对应的错误提示。
- 可选优化:可以在路由配置中添加根路径重定向规则,访问项目根地址时自动跳转至home页,修改后的路由配置如下:
// app.routing.module.ts const routes: Routes = [ {path: '', redirectTo: 'home', pathMatch: 'full'}, {path: 'home', component: HomeComponent} ];
内容的提问来源于stack exchange,提问作者Samanthika Rajapaksa
相关产品推荐
相关产品推荐

