Я только что закончил свои Angular уроки, и я уже обнаружил некоторые различия между тем, что я изучаю, и Angular официальной документацией.
Давайте представим, что я хочу восстановить пользователя с идентификатором API.
Вот как я могу это сделать в соответствии с моими уроками:
export class UserService {
constructor(
private httpClient: HttpClient
) {
}
public user: User; // local variable using User model
public userSubject: BehaviorSubject<User> = new BehaviorSubject<User>(null);
async getSingleUserFromServer() {
await this.httpClient.get<any>('https://xvalor.repliqa.fr/api/v1/user/' + this.userId).subscribe(
(response) => {
this.user = response;
this.userPortfolios = this.user.portfolioAssoc;
this.emitSubjects();
});
}
emitSubjects() {
this.userSubject.next(this.user);
}
}
, а вот как angular сделать c продолжить
getHeroes (): Observable<Hero[]> {
return this.http.get<Hero[]>(this.heroesUrl)
.pipe(
tap(_ => this.log('fetched heroes')),
catchError(this.handleError<Hero[]>('getHeroes', []))
);
}
Я понимаю, что оба метода тихо делают одно и то же, я просто хочу быть уверен, какой из них использовать, особенно в разработке больших проектов.