Как преобразовать наблюдаемый ответ, чтобы вернуть существующий объект вместо нового объекта? - PullRequest
0 голосов
/ 06 октября 2019

Это то, что у меня есть сейчас:

cachedEntities: Map<string, CareerPreferenceMyCareer> = new Map<string, CareerPreferenceMyCareer>();

getByEmployeeId(employeeId: string): Observable<CareerPreferenceMyCareer> {
    return this.http.get<CareerPreferenceMyCareer>(`${this.startupService.settings.coreUrl}/${this.serviceEndpoint}/ByEmployee/${employeeId}`).pipe(
      map(res => {
        if (res)
          this.cachedEntities.set(employeeId, res); //I want to get exatly this object but map operator creates a new object
        return this.cachedEntities.get(employeeId);
      })
    );
  }

Я знаю, что новый объект создан из-за оператора map pipe, но возможно ли получить существующий объект вместо нового объекта? Может быть, с другим оператором?

Я надеюсь, что я хорошо объяснил мою проблему. Заранее спасибо и поправьте меня, если я ошибаюсь с любой ошибкой, которую я написал

1 Ответ

0 голосов
/ 06 октября 2019
нет

нет. оператор карты не создает новый объект. вернуть точно такой же объект. ваша функция создания нового объекта. Смотрите пример: https://stackblitz.com/edit/angular-cezdgd

...