На моем компоненте я получаю переводы из моего сервиса.
Служба выполняет вызов контроллера MVC API.
код на компоненте:
private getTranslations(): void {
this._translationService.getTranslations('Foo');
}
Код на сервисе:
public translations: Translation[] = new Array<Translation>();
public getTranslations(action: string) {
this._http.get<Translation[]>(this.baseUrl + action).subscribe(
(result: Translation[]) => {
result.forEach(element => {
this.translations.push(element);
});
},
(error: any) => this._loggerService.logError(error)
);
}
В службе он устанавливает значение для переменной this.translations
в подписке.
Как я могу ждать в моем компоненте, чтобы это "завершилось", означая, что публичная переменная this.translations
установлена?
Я видел поток, чтобы обернуть его в new Promise()
, но я не смог понять это в моем примере. Можно использовать любой метод.