Angular 6 routing - 错误_angular_router__WEBPACK_IMPORTED_MODULE_0 __。RouterModule.forRootd不是函数

时间:2018-05-23 00:49:41

标签: angular typescript angular-routing

Angular CLI的第6版以不同方式生成路由模块,我的app-routing.ts如下:

import { Routes, RouterModule } from '@angular/router';
import { HomeComponent } from './components/home/home.component';
import { TodoComponent } from './components/todo/todo.component';

const routes: Routes = [
  { path: '', redirectTo: 'home', pathMatch: 'full' },
  { path: 'home', component: HomeComponent },
  { path: '**', redirectTo: 'home' },
  { path: 'todo', component: TodoComponent }
];

export const AppRoutes = RouterModule.forRoot(routes);

但我的浏览器控制台指向最后一行并显示以下错误:

  

未捕获的TypeError:   _angular_router__WEBPACK_IMPORTED_MODULE_0 __。RouterModule.forRootd不是函数

enter image description here

浏览网后未能找到答案here too,我会问,CLI 6是否正常生成实现@ngModule及其导入和导出的更多路由模块在以前的版本中做过,例如:

@NgModule({
  imports: [
    RouterModule.forChild(crisisCenterRoutes)
  ],
  exports: [
    RouterModule
  ]
})

如果没有,这个错误的解决方案是什么?

更新,这是我app-shared.module的代码:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
import { AppComponent } from './app.component';
import { AppRoutes } from './app.routing';
import { NavMenuComponent } from './components/navmenu/navmenu.component';
import { HomeComponent } from './components/home/home.component';
import { TodoModule } from './components/todo/todo.module';
import { FormsModule } from '@angular/forms';
import { CommonModule } from '@angular/common';
import { HeaderInterceptor } from './core/header.interceptor';


@NgModule({
  declarations: [
    AppComponent,
    NavMenuComponent,
    HomeComponent
  ],
  imports: [
    TodoModule,
    CommonModule,
    HttpClientModule,
    FormsModule,
    BrowserModule,
    AppRoutes
  ],
  providers: [
    {
        provide: HTTP_INTERCEPTORS,
        useClass: HeaderInterceptor,
        multi: true
    }
    ],
  bootstrap: [AppComponent]
})
export class AppSharedModule { }

0 个答案:

没有答案