我正在将NgRx引入我的Angular 2应用程序中。我正在使用异步进行某些操作。但是,不知何故,错误的异步(我认为是AjaxRequest的异步)正在被触发,这导致我的Observable在被设置之前被触发。
例如:我通过网络服务收到我的翻译。我使用管道将其翻译成正确的文本,如下所示:
transform(value: string, args: any[]): any {
return this.uiMessages$
.switchMap((uiMessages: UiMessage[]) => Observable.from(uiMessages))
.find((uiMessage: UiMessage) => (uiMessage.key === value))
.map((uiMessage: UiMessage) => uiMessage.translation);
}
在我的组件中,我像这样使用管道:
<span class="user-welcome">{{'ui.main.welcome' | translate | async }} {{fullName}}</span>
在设置uiMessages Obeservable之前触发管道。
我是否必须明确导入异步,或者还有其他一些我做错的事情?