javascript - RangeError: Maximalt värde för anropsstacken överskridet Angular 5 Router


Hej, jag har precis försökt ställa in lazy loading av moduler i min applikation men jag får detta fel. Jag följde en handledning men uppenbarligen fick de inte samma fel.

min uppsättning är som följer

app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { RouterModule, Routes, ActivatedRoute, ParamMap } from '@angular/router';
import { HttpClientModule } from '@angular/common/http';
import { environment } from '../environments/environment';
import { ServiceWorkerModule } from '@angular/service-worker';
import { OurWorkModule } from './our-work/our-work.module';
import { ourWorkRouting } from './our-work/our-work-routing.module';
import { AppComponent } from './app.component';
import { HomeComponent } from './home/home.component';
import { FooterComponent } from './shared/footer/footer.component';
import { WhatWeDoComponent } from './what-we-do/what-we-do.component';
import { HeaderComponent } from './shared/header/header.component';
import { OurProcessComponent } from './our-process/our-process.component';
import { OurTechnologyComponent } from './our-technology/our-technology.component';
import { GetInTouchComponent } from './get-in-touch/get-in-touch.component';

export const ROUTES: Routes = [
   { path: '', component: HomeComponent, pathMatch: 'full' },
   { path: 'what-we-do', component: WhatWeDoComponent},
   { path: 'our-work', loadChildren: 'app/our-work/our-work.module#OurWorkModule' },
   { path: 'our-technology', component: OurTechnologyComponent},
   { path: 'get-in-touch', component: GetInTouchComponent },
   { path: '**', redirectTo: ''}
];

@NgModule({
   declarations: [
      AppComponent,
      HomeComponent,
      FooterComponent,
      WhatWeDoComponent,
      HeaderComponent,
      OurProcessComponent,
      OurTechnologyComponent,
      GetInTouchComponent,
      HeaderHomeComponent,
   ],
  imports: [
     BrowserModule,
     LazyLoadImageModule,
     RouterModule.forRoot(ROUTES),
     FormsModule,
     HttpModule,
     HttpClientModule,
     ourWorkRouting,
     OurWorkModule,
     environment.production ? ServiceWorkerModule.register('/ngsw-worker.js') : [],
  ],
      providers: [EmailService],
      bootstrap: [AppComponent]
  })
  export class AppModule { }

vårt-arbets-modul.ts

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule, Routes, ActivatedRoute, ParamMap } from '@angular/router';
import { OurWorkComponent } from './our-work.component';


@NgModule({
    imports: [
        CommonModule,
        RouterModule
    ],
    declarations: [
        OurWorkComponent,

    ]

})
export class OurWorkModule {}

vårt-arbete-routing.module.ts

import { Routes, RouterModule } from '@angular/router';
import { OurWorkComponent } from './our-work.component';

const ourWorkRoutes: Routes = [
    { path: '', component: OurWorkComponent }
];

export const ourWorkRouting = RouterModule.forChild(ourWorkRoutes);

det här är första gången jag försöker lazyloada en modul eller sätta upp en feature-modul, så all hjälp skulle uppskattas!

Tack

Svar #1

Så här ser min lazy-loadade modul ut, hoppas den hjälper dig

import { NgModule, ApplicationRef, APP_BOOTSTRAP_LISTENER, NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { APP_BASE_HREF, CommonModule } from '@angular/common';
import { Http, HttpModule } from "@angular/http";
import { RouterModule } from '@angular/router';
import { FormsModule } from '@angular/forms';

import { OurWorkComponent } from './our-work.component';

@NgModule({
    declarations: [
        OurWorkComponent
    ],
    imports: [
        CommonModule,
        FormsModule,
        HttpModule,
        RouterModule.forChild([
            { path: '', component: OurWorkComponent }
        ])
    ],
    providers : [
        //add services and other providers
    ],
    schemas: [ NO_ERRORS_SCHEMA, CUSTOM_ELEMENTS_SCHEMA ]
})

export class FeaturedModule { }

Jag tror att du inte lade till din ourWorkRouting i din our-work-module.ts