打字稿中的异步管道等价物

时间:2016-12-07 19:44:22

标签: javascript angular typescript ionic2 rxjs

我在Ionic2中使用ng-translate,它为我提供了在代码中翻译字符串的方法。目前,我必须使用这样的服务:

translate.get('ERROR').subscribe((res: string) => {
   //The string with code 'ERROR' is translated in res
   this.errorString = res;
});
....
//Later on, when error happens:
alert(this.errorString);

我在很多文件中都有很多字符串,警报和通知。订阅get方法对每个方法的可观察性是非常乏味的。在html中,人们可以使用异步管道轻松避免这种购买,或者在这种情况下转换管道,它不需要显式订阅observable:

<div>{{ 'ERROR' | translate}}</div>

对于typescript文件中的字符串,是否有任何方法可以实现这一点?例如,理想情况下,我希望有一个简写来实现这一点:

   alert(idealTranslateFunction('ERROR'));

1 个答案:

答案 0 :(得分:0)

考虑到代码在async函数中,它可以是

this.errorString = await translate.get('ERROR').toPromise();

否则应使用subscribe(...)