'router-outlet' 不是 angular 中的已知元素 6

'router-outlet' is not a known element in angular 6

我在使用 angular-cli 全新安装 angular6 时收到以下错误。

Uncaught Error: Template parse errors: 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module.

我遵循了这个指南:https://medium.com/@meemo_86/good-article-beeman-490eaf1399a

然后我跟进了那篇文章的评论,该评论说使用 <router-outlet></router-outlet> 而不是 <ng-content></ng-content>

我做了那些更正,然后我阅读了 https://angular.io/tutorial/toh-pt5,然后按照那里的说明去做。

所以现在我有一个 AppRoutingModule,我在 app.module.ts 中导入该模块,在那里我还设置了路由并将 RouterModule.forRoot(appRoutes) 添加到导入中。

但是我无法让这个错误消失。我究竟做错了什么?当我在 layout.component.htm 中添加 <router-outler></router-outlet> 时,应用程序中断。 我也在这里搜索了这个主题并尝试了一些更改,但似乎没有任何效果。

完整的源代码在这里:

https://github.com/ekstremedia/angular6

我看到你在 UIModule

的导入中缺少 RouterModule
@NgModule({
  imports: [
    CommonModule,
    RouterModule
  ],
  declarations: [LayoutComponent, HeaderComponent, FooterComponent],
  exports: [LayoutComponent]
})
export class UiModule { }

您收到错误是因为您在 UIModule 中使用了路由器出口组件,而没有在 UIModule 中导入 RouterModule。

我也遇到了同样的问题。而且我已经在 UIModule 中导入了 RouterModule,但仍然不起作用。但是在我重新启动应用程序后,它成功了,没有更多的错误。

所以,你应该做的是: 1、在UIModule中导入RouterModule; 2. 重新启动您的应用程序

在文件夹 app.module.ts 中,我导入了以下内容

import { AppRoutingModule } from './app-routing.module';

也不要忘记在 @NgModule

中添加它