当我使用“ng build –prod”构建Angular应用程序时,我遇到了以下错误.当我使用Angular 4构建并且使用Angular 5获得错误时,这是有效的.使用Angular 5“ng serve”工作正常.
ERROR in Error: Cannot determine the module for class TimeAgoPipe in mypath/node_modules/time-ago-pipe/time-ago-pipe.ts! Add TimeAgoPipe to the NgModule to fix it.
获取https://www.npmjs.com/package/time-ago-pipe的错误
有解决方案?
Angular 5和特定角度cli 1.5默认提前编译打开它需要知道它在项目文件夹中找到的所有组件/管道等的模块,如果你有一些未在任何模块中声明的组件它将抛出错误.
您可以在某个模块中声明TimeAgoPipe:
@NgModule({ declarations: [TimeAgoPipe,...] }) export class AppModule {}// for example can be any other used module
或者尝试在没有提前编译的情况下运行构建,结果代码将运行得更慢
ng build --prod --aot=false
第三种方法,如果你根本不使用那个管道,你可以将它添加到tsconfig.json中的排除文件
{ ... "exclude": [ "path/to/unused/component.ts",... ] }