我有一个管道
@Pipe({name: 'keys'})
export class KeysPipe implements PipeTransform {
transform(value, args:string[]) : any {
.....
return keys;
}
}
我有两个模块,我需要使用它。如果我在这两个模块中都做了类似的事情,我会收到一个错误,说“"两个模块声明了KeysPipe"
模块1,模块2:
declarations: [KeysPipe],
然后我尝试通过它自己的模块导出KeysPipe,以便我可以将其导入到我需要使用它的两个模块中
@NgModule({
declarations: [ KeysPipe],
})
export class KeysPipeModule {
}
现在我在我需要使用KeysPipe的两个模块中导入KeysPipeModule
模块1,模块2:
imports: [KeysPipeModule],
但是现在我得到了一个不同的模板错误,说管道没有找到"管道按键'无法找到(" v * ngIf =" docalc">"
答案 0 :(得分:7)
你走在正确的轨道上你唯一缺少的代码是KeysPipeModule
中的导出。这应该是它的样子:
@NgModule({
declarations: [ KeysPipe],
exports: [KeysPipe]
})
export class KeysPipeModule {}