Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 角度5-定制管道';找不到';错误_Angular_Angular5 - Fatal编程技术网

Angular 角度5-定制管道';找不到';错误

Angular 角度5-定制管道';找不到';错误,angular,angular5,Angular,Angular5,我已经尝试了我在那里看到的所有建议,但仍然遇到可怕的:模板解析错误:无法找到管道“orderFilter” 在我的SharedModule.ts(导入MyComponent)中,我有: 管道代码(目前比较简单): 在MyComponent.html中,我有: {{item | orderFilter}} 我有点不知所措。。除非我在实现中遗漏了一些特定的东西。有什么想法吗?在这个最小的复制中,当我从app.module的“声明”中删除管道时,我得到了相同的错误: 当我把它加回去的时候,维奥拉!一

我已经尝试了我在那里看到的所有建议,但仍然遇到可怕的:
模板解析错误:无法找到管道“orderFilter”

在我的SharedModule.ts(导入MyComponent)中,我有:

管道代码(目前比较简单):

在MyComponent.html中,我有:

{{item | orderFilter}}

我有点不知所措。。除非我在实现中遗漏了一些特定的东西。有什么想法吗?

在这个最小的复制中,当我从app.module的“声明”中删除管道时,我得到了相同的错误:


当我把它加回去的时候,维奥拉!一切正常。这使我相信错误在使用管道模块的模块中。您是否记得将管道模块导入MyComponent所在的模块?

请尝试为管道命名,您不能将管道命名为“过滤器”

当我们在共享模块文件中添加任何组件或指令时,因此在声明中添加该模块时,我们也需要添加到导出数组中。 请参阅以下代码:

import { OrderFilterPipe } from '../pipes/order-filter.pipe';

@NgModule({
declarations: [OrderFilterPipe],
exports: [OrderFilterPipe]     // you need to add this line
})

错误消息提到
myPipe
。也许你在标记的某个地方有这样的输入错误。为什么你要把它同时作为声明和提供者添加呢?从提供者中删除它。另外,在angular中直接不鼓励您尝试,只需在组件中使用数组方法或RxJS进行筛选。@ConnorsFan抱歉,我的示例中有一个输入错误-我更改了名称以保护无辜者;)当您说SharedModule导入组件时,您的意思是什么?是否将组件添加到模块中的“导入”属性?您只能导入其他模块。@KeenanDiggs omg。。我找到了根本原因。。我的应用程序实际上没有导入SharedModule。。它正在从其他模块导入MyComponent。。这就是它找不到过滤器的原因。啊。。谢谢,Keenan你帮我找到了我代码中的错误!我刚刚使用了一个从我的代码中提取的坏例子-刚刚更新为“orderFilter”以消除混淆是的,我确实看到它在你的例子中起作用。奇怪的是,为什么没有记在心里。。我一定是忽略了什么。是的,管道导入到SharedModule中,MyComponent也存在于模板中的no-tslint错误中。。只是出于某种原因,在运行时它无法找到它并抛出该错误
{{item | orderFilter}}
import { OrderFilterPipe } from '../pipes/order-filter.pipe';

@NgModule({
declarations: [OrderFilterPipe],
exports: [OrderFilterPipe]     // you need to add this line
})