在生产模式下构建时找不到管道

Pipe not found when building in production mode

我使用 angular-cli 创建了一个 angular 6 应用程序,向其中添加了一些模块和组件,还在共享模块中添加了一些管道。

我可以使用 ng build 成功地构建我的应用程序并使用 ng serve 成功地 运行 它。

但是,当我尝试使用 ng build --prod 构建完全相同的应用程序时,出现以下错误:

The pipe 'myPipe' could not be found

我确实在 SharedModule 中声明并导出了管道,并且我从使用管道的模块中导入了 SharedModule。对于生产模式,我还需要做些什么吗?请注意,我使用管道的模块是延迟加载的,所以这可能会有所不同。


作为旁注: 在生产模式下构建时,我也遇到了很多关于 font-awesome 的错误("Can't bind to 'icon' since it isn't a known property of 'fa-icon'",“'fa-icon' 不是已知元素”),而在构建非生产模式时我没有得到版本。但我想我会先解决管道问题。

这是一个愚蠢的错误...我实际上忘记了在我的其他模块之一中导入我的 SharedModule。错误消息让我认为错误发生在某个不同的模块中。

生产构建和非生产构建之间的区别很简单:非生产构建也失败了,但只是在运行时——而生产构建在构建时失败了。