Angular:在自定义管道中包装ng-translate服务

时间:2017-06-26 11:47:31

标签: angular

我正在尝试在我的应用程序中创建我自己的ng-translate TranslatePipe实现。 为此,我构建了一个管道TranslateWrapperPipe,它调用TranslateService并返回数据。

export class TranslateWrapperPipe implements PipeTransform {
constructor(private translateService : TranslateService){
}

  transform(value: any, args?: any): any {
  if(value){
  console.log(value)
  return this.translateService.get(value)
  }
 }
}

但是我得到了一个对象。 如果我做这样的事情this.translateService.get(value).subscribe((res) => console.log(res))我得到了结果,但是如何将它返回给模板中的原始调用者?

1 个答案:

答案 0 :(得分:0)

将自定义管道与Async Pipe一起使用解决了这个问题。似乎每当从管道返回一个observable时,我们也需要添加 async 管道。