как получить наблюдаемое разрешенное значение? - PullRequest
0 голосов
/ 12 апреля 2019

Мне нужно получить значение вызова службы в файле app.component.ts, мне нужно это значение до того, как будет загружено любое другое представление, потому что им нужно это значение из избыточного хранилища, и проверьте его в своих ngOnInit() методах.

Я пытался использовать обещание и выполнить логику в методе .then () ..., не сработало.Я также пытался работать с наблюдаемыми методами

next: x =>, error: err => and complete: () =>, но та же проблема сохраняется: я не получаю ожидаемого поведения, потому что, когда другие представления инициализируются, они получают пустое значение из хранилища, потому что службане вернулся в этот момент.Я обнаружил функцию resolver (), но поскольку app.component.ts не маршрутизируется как другие компоненты, я не могу его использовать.

app.component.ts

 ngOnInit() {
 this.storeUserReportAccessService.checkUserReportAccess().subscribe((response) => {
  this.store.dispatch(new StoreUserReportAccess(response));
  }
}

service:

checkUserReportAccess(): Observable<boolean> {
return this.http.postAPI(AWS_GET_USER_REPORT_ACCESS_URL,
            null).pipe(map(payload => {
            let access = payload.json();
            return access.HasAccess;
        }));
}
...