如何在两个不同的角度模块

时间:2016-09-04 19:27:43

标签: javascript angular typescript pipe

我有一个管道

@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">"

1 个答案:

答案 0 :(得分:7)

你走在正确的轨道上你唯一缺少的代码是KeysPipeModule中的导出。这应该是它的样子:

@NgModule({
    declarations: [ KeysPipe],
    exports: [KeysPipe]
})
export class KeysPipeModule {}