Je suis en train de construire une application web avec Angular 4. J'ai un module de routage de niveau supérieur et un module de routage distinct pour chaque sous-module (par exemple, HomeModule).
C'est ma configuration de routage de premier niveau :
export const ROUTES: Routes = [
{path: '', loadChildren: './home#HomeModule'},
{path: '**', component: NotFoundComponent},
];
Quand je cours ng server
j'obtiens une erreur étrange, le module home
n'a pas été trouvé. L'application ne fonctionne pas dans le navigateur.
La partie étrange est la suivante : Lorsqu'un fichier est modifié et que webpack recompile le projet, tout fonctionne très bien et le routage fonctionne.
L'erreur n'apparaît que lorsque je suis en train d'exécuter ng serve
.
Voici l'erreur que j'obtiens lorsque j'exécute ng serve
mais pas lorsque le projet est recompilé en raison d'un changement de fichier :
ERROR in Error: Could not resolve module ./home relative to /path/to/my/project/src/app/app.module.ts
at StaticSymbolResolver.getSymbolByModule (/path/to/my/project/node_modules/@angular/compiler/bundles/compiler.umd.js:31884:30)
at StaticReflector.resolveExternalReference (/path/to/my/project/node_modules/@angular/compiler/bundles/compiler.umd.js:30350:62)
at parseLazyRoute (/path/to/my/project/node_modules/@angular/compiler/bundles/compiler.umd.js:28616:55)
at listLazyRoutes (/path/to/my/project/node_modules/@angular/compiler/bundles/compiler.umd.js:28578:36)
at visitLazyRoute (/path/to/my/project/node_modules/@angular/compiler/bundles/compiler.umd.js:29995:47)
at AotCompiler.listLazyRoutes (/path/to/my/project/node_modules/@angular/compiler/bundles/compiler.umd.js:29963:20)
at AngularCompilerProgram.listLazyRoutes (/path/to/my/project/node_modules/@angular/compiler-cli/src/transformers/program.js:157:30)
at Function.NgTools_InternalApi_NG_2.listLazyRoutes (/path/to/my/project/node_modules/@angular/compiler-cli/src/ngtools_api.js:44:36)
at AngularCompilerPlugin._getLazyRoutesFromNgtools (/path/to/my/project/node_modules/@ngtools/webpack/src/angular_compiler_plugin.js:247:66)
at Promise.resolve.then.then (/path/to/my/project/node_modules/@ngtools/webpack/src/angular_compiler_plugin.js:538:50)
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)
Merci d'avance.
0 votes
Configuration de la route par chargement paresseux : L'adresse est l'emplacement du fichier AdminModule ( par rapport à la racine de l'application ), suivi d'un séparateur #, puis du nom de la classe du module exporté, AdminModule.