我正在使用 ng-translate在 Ionic2 中,它为我提供了在代码中翻译字符串的方法。目前,我必须像这样使用该服务:
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
方法的 observable 是非常乏味的。在 html 中,可以使用异步管道轻松避免这种购买,或者在这种情况下使用翻译管道,它不需要显式订阅可观察对象:
<div>{{ 'ERROR' | translate}}</div>
对于 typescript 文件中的字符串,有什么方法可以让我同样简单地做到这一点?例如,理想情况下,我希望有一个速记来实现这一点:
alert(idealTranslateFunction('ERROR'));
最佳答案
考虑到代码在async
函数中,可以
this.errorString = await translate.get('ERROR').toPromise();
否则应使用 subscribe(...)
。
关于javascript - 相当于 typescript 中的异步管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41026026/