Я пытаюсь привести свой ответ от http get, используя httpclient, и создать экземпляр класса, который я создал.
ПРОБЛЕМА
Кажется, что HttpClient не создает новый экземпляр моего класса, используя свойства своего объекта ответа.Пожалуйста, помогите!
Я попытался создать интерфейс класса против.Не уверен, что еще мне нужно здесь делать.
Мой класс
export class Escalation {
constructor(private NAME: string, private DESCRIPTION: string) { }
public get name() {
return this.NAME;
}
public set name(name: string) {
this.NAME = name;
}
public get description() {
return this.DESCRIPTION;
}
public set description(description: string) {
this.DESCRIPTION = description;
}
}
Мой сервис
public getEscalation(escalationName) {
return this.http.get(`${this.globals.baseRestUrl}/companies/escalations/${escalationName}`);
}
Мой компонент
public escalation: Escalation = new Escalation('', '');
this.companiesService.getEscalation(escalationName).subscribe(
(escalationResponse: Escalation) => this.escalation = {
...escalationResponse
}, (error: any) => {
console.log(error);
}
);
Ожидаемый результат
Я ожидал, что мой ответ будет приведен к типу Escalation (Мой класс) при обратном вызове API.
Фактический результат
API возвращает объект примерно так:
{
NAME: 'Escalation 1',
DESCRIPTION: 'This is a test description'
}
Но в конечном итоге this.escalation возвращает undefined
Надеюсь, я объяснил этоЧто ж.Пожалуйста, дайте мне знать, если вам нужна дополнительная информация!