Только начал изучать ангуляр.
Нужно чтоб ответ HttpClient возвращал инстансы объектов, например есть метод:
getPersons(): Observable<Person[]> {
return this.http.get<Person[]>("http://test/api/v1/persons");
}
Ну я ожидаю что он вернет мне Observable со списком инстансов класса Person. То есть он сам создаст инстансы Person и пихнет туда данные (как, например делает, retrofit) Но по факту там массив Object. Неужели ангуляр из коробки так не умеет?
Да, стоит отметить что Person - это не интерфейс, а класс, имеющий методы. Соответсвенно, я хочу получить person, вызвать метод person.someMethod() - а он мне ошибку (так как это Object)
Заранее спасибо.
UPDATE
Разобрался как сделать :
getPerson(id: number): Observable<Person> {
let config = {params: {id: id.toString()}};
return this.http
.get<Person>("http://test/api/v1/person/view", config)
.pipe(map(p => {
let person = new Person();
Object.assign(person, p);
return person;
}))
}
Но неужели ангуляр не умеет так из коробки?