该错误通常是由于忘记在导入RouterModule
时使用.forRoot()
或.forChild()
方法引起的。下面是解决该问题的示例代码:
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
const routes: Routes = [
// 定义你的路由配置
];
@NgModule({
imports: [RouterModule.forRoot(routes)], // 使用.forRoot()方法
exports: [RouterModule]
})
export class AppRoutingModule { }
在根模块中使用forRoot()
方法,而在其他模块中使用forChild()
方法。这样做的目的是确保在根模块中只加载一次路由配置,而在其他模块中只加载额外的路由配置。
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule, Routes } from '@angular/router';
const routes: Routes = [
// 定义你的路由配置
];
@NgModule({
imports: [RouterModule.forChild(routes)], // 使用.forChild()方法
exports: [RouterModule]
})
export class ExampleRoutingModule { }
确保在导入RouterModule
时使用正确的方法,以避免出现“在类型'ModuleWithProviders