我使用 Webpack 4 从 Angular.Js 1.6.6 升级到 Angular 6:
导入'core-js/es7/reflect';
导入'zone.js';
导入“反射元数据”;
导入'rxjs';
从'@angular/core'导入{ NgModule };
从“@angular/forms”导入 { FormsModule };
从'@angular/router'导入{路由,RouterModule};
从“@angular/platform-browser”导入 { BrowserModule };
导入 { UpgradeModule, downgradeComponent, downgradeInjectable, setAngularJSGlobal } from '@angular/upgrade/static';
从'./app.module.ajs'导入{模块};
导入'./config/routes';
从'./components/app/app'导入AppComponent;
从'./directives/application/application'导入应用程序;
从“@angular/platform-browser-dynamic”导入 { platformBrowserDynamic };
console.log('NgModule');
常量 appRoutes: 路由 = [
];
@NgModule({
声明:[AppComponent,应用程序],
entryComponents:[AppComponent],
进口:[
浏览器模块,
表单模块,
RouterModule.forRoot(appRoutes),
升级模块
]
})
类 AppModule {
构造函数(公共升级:UpgradeModule){
console.log('AppModule 构造函数');
}
ngDoBootstrap() {
console.log('AppModule ngDoBootstrap');
}
}
console.log('setAngularJSGlobal ...');
setAngularJSGlobal(window['angular']);
console.log('setAngularJSGlobal!!!');
进口主 = 要求('./main');
console.log('在 bootstrapModule 之前的 module.name:', module.name);
platformBrowserDynamic().bootstrapModule(AppModule).then(platformRef => {
console.log('混合模式:Angular + Angular.Js');
module.directive('appRoot', downgradeComponent({ component: AppComponent }));
常量升级 = platformRef.injector.get(UpgradeModule) as UpgradeModule;
console.log('bootstrapModule:', module.name);
主要['launchAngular']();
upgrade.bootstrap(document.body, [module.name], { strictDi: true });
});
创建了自定义别名,为 tsconfig 添加了正确的路径,Webpack 构建通过并产生输出,但是当应用程序在浏览器中启动时,控制台中的错误弹出窗口:ngRoute is missing or wrong ng module components 什么没有正确完成以及如何修复这个错误?