【发布时间】:2018-01-09 00:34:01
【问题描述】:
我已通过以下方式将 Angular 从 4.0.0 升级到 4.3.2:
npm install @angular/common@latest @angular/compiler@latest @angular/compiler-cli@latest @angular/core@latest @angular/forms@latest @angular/http@latest @angular/platform-browser@latest @angular/platform-browser-dynamic@latest @angular/platform-server@latest @angular/router@latest @angular/animations@latest typescript@latest rxjs@latest --save
然后我输入ng serve 并且运行良好,但是当我想通过ng build --prod 进行部署时出现以下错误:
[1m[33mWARNING in ./src/$$_gendir/app/app.module.ngfactory.ts
730:2-27 "export 'ɵNgModuleInjector' (imported as 'import0') was not found in '@angular/core'[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/core/core.ngfactory.ts (11,49): Property 'ɵNgModuleInjector' does not exist on type 'typeof "C:/Data/angular4/system/node_modules/@angular/core/core"'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/core/core.ngfactory.ts (41,79): Property 'parent' does not exist on type 'ApplicationModuleInjector'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/core/core.ngfactory.ts (45,76): Property 'parent' does not exist on type 'ApplicationModuleInjector'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/core/core.ngfactory.ts (46,38): Property 'parent' does not exist on type 'ApplicationModuleInjector'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/core/core.ngfactory.ts (46,70): Property 'parent' does not exist on type 'ApplicationModuleInjector'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/core/core.ngfactory.ts (46,99): Argument of type 'this' is not assignable to parameter of type 'Injector'.
Type 'ApplicationModuleInjector' is not assignable to type 'Injector'.
Property 'get' is missing in type 'ApplicationModuleInjector'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/core/core.ngfactory.ts (46,109): Property 'parent' does not exist on type 'ApplicationModuleInjector'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/core/core.ngfactory.ts (46,147): Property 'componentFactoryResolver' does not exist on type 'ApplicationModuleInjector'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/core/core.ngfactory.ts (67,94): Cannot create an instance of the abstract class 'NgModuleFactory'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/common/common.ngfactory.ts (11,44): Property 'ɵNgModuleInjector' does not exist on type 'typeof "C:/Data/angular4/system/node_modules/@angular/core/core"'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/common/common.ngfactory.ts (18,111): Property 'parent' does not exist on type 'CommonModuleInjector'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/common/common.ngfactory.ts (33,84): Cannot create an instance of the abstract class 'NgModuleFactory'.[39m[22m
[1m[31mERROR in C:/Data/angular4/system/src/$$_gendir/node_modules/@angular/platform-browser/platform-browser.ngfactory.ts (12,45): Property 'ɵNgModuleInjector' does not exist on type 'typeof "C:/Data/angular4/system/node_modules/@angular/core/core"'.[39m[22m
我还显示文件内容:main.ts
import { enableProdMode } from '@angular/core';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app/app.module';
import { environment } from './environments/environment';
if (environment.production) {
enableProdMode();
}
platformBrowserDynamic().bootstrapModule(AppModule);
我正在互联网上查看有关此问题的信息,但找不到解决问题的原因。它可能缺少什么?
【问题讨论】:
-
需要考虑的事项:您是否在安装前删除了 node_modules?你清理 npm 缓存了吗?
-
我没有删除 node_modules。我执行 npm cache clean 然后 ng build --prod 但出现上面相同的错误列表
-
如果您没有删除 node_modules 然后在全新安装之前清理缓存,则可能是交叉污染
-
好的。我删除了 node_modules,清理了缓存,再次安装。好吧,我有关于 app.module.ngfactory.ts 的错误列表。它还说我在 main.ts 中有错误。就是这样,main.ts 的内容文件就在上面。错误说: ./src/main.ts 中的错误模块未找到:错误:无法解析 'C:\Data\angular4\system\src 中的 './$$_gendir/app/app.module.ngfactory' ' @ ./src/main.ts 4:0-74 @multi ./src/main.ts
-
Angular latest 不一定与最新的 RxJS 和 TypeScript 兼容,你最好看看由例如设置的内容。
ng new或quickstart。
标签: node.js angular angular-cli npm-install