升级我的angular-cli后,我得到以下错误
- ERROR in Template parse errors:
- Can't bind to 'index' since it isn't a known property of 'tag'. ("own)="handleKeydown($event,item)"
- (onTagEdited)="onTagEdited.emit(item)"
- [ERROR ->][index]="i"
- [attr.tabindex]="readonly ? -1 : 0"
- [class.readonly]="readonly""): TagInputComponent@16:13
- ERROR in ./src/main.ts
- Module not found: Error: Can't resolve './$$_gendir/app/app.module.ngfactory' in 'D:\xxxx\yyyy\eeeee\eeee\src'
- @ ./src/main.ts 5:0-74
- @ multi ./src/main.ts
当我运行build –prod并且在没有任何参数的情况下运行build时工作正常,会发生此错误,
当您在角度2中运行ng build时,最新的angular-cli会自动运行–aot参数(提前编译),因此它正在尝试优化您的代码。您有一个尚未兼容优化的软件包。所以你需要更新你的包。很可能是你的app.module.ts中有** forRoot()**的软件包
我建议更新所有包。
更新包的简单方法是使用ncu npm包,如下所示,我从How do I correctly upgrade angular 2 (npm) to the latest version?获得它
安装
- npm install -g npm-check-updates
ncu用于显示
ncu -u用于重写package.json
并运行npm install来更新你的包
如果以上操作不起作用,您可能需要更新代码才能获得合规性。请参阅以下网址,对您的代码进行更改。
https://medium.com/@isaacplmann/getting-your-angular-2-library-ready-for-aot-90d1347bcad