You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular 13路由匹配错误:点击Portfolio导航页面无法加载

问题分析与修复方案

核心问题

点击Portfolio导航时出现路由匹配错误,根源在于组件重复声明、路由组件配置错误以及模块依赖缺失三个问题叠加导致。


具体修复步骤

1. 修复组件重复声明问题

Angular规定组件只能属于一个模块,当前OnlineComponent同时在AppModule和OnlineModule中声明,这会导致组件识别异常。
修改app.module.ts:

@NgModule({
    imports: [
        BrowserModule,
        ReactiveFormsModule,
        HttpClientModule,
        AppRoutingModule,
        OnlineModule // 新增导入OnlineModule
    ],
    declarations: [
        AppComponent,
        // 移除OnlineComponent的声明
        SigninComponent
    ],
    providers: [
        { provide: HTTP_INTERCEPTORS, useClass: BasicAuthInterceptor, multi: true },
        { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true },
        fakeBackendProvider
    ],
    bootstrap: [AppComponent]
})
export class AppModule { }

2. 修正Administration模块的默认路由组件

administration-routing.module.ts中默认路由错误绑定了OnlineComponent,应替换为AdministrationComponent(当前模块的根组件):

export const ADMINISTRATION_ROUTES: Routes = [
  {
    path: '',
    component: AdministrationComponent, // 替换为AdministrationComponent
  }, 
  {
    path: 'portfolio',
    component: PortfolioComponent,
  },
];

3. 让Administration模块识别PortfolioComponent

AdministrationModule未导入PortfolioModule,导致路由中配置的PortfolioComponent无法被识别,修改administration.module.ts:

@NgModule({
  imports: [CommonModule, AdministrationRoutingModule, PortfolioModule], // 新增导入PortfolioModule
  declarations: [AdministrationComponent],
})
export class AdministrationModule {}

验证修复

完成以上修改后,点击Portfolio导航时,路由会正确匹配administration/portfolio,并加载对应的PortfolioComponent,控制台的路由错误将消失。

内容的提问来源于stack exchange,提问作者poporp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 23:15:49