У меня есть компонент, который вызывает службу для извлечения данных из конечной точки RESTful. Эта услуга должна быть предоставлена для функции обратного вызова после извлечения указанных данных.
Проблема заключается в том, что когда я пытаюсь использовать функцию обратного вызова для добавления данных к существующим данным в компонентной переменной, я получаю EXCEPTION: TypeError: Cannot read property 'messages' of undefined
. Почему this
undefined?
TypeScript версия: версия 1.8.10
Код контроллера:
import {Component} from '@angular/core'
import {ApiService} from '...'
@Component({
...
})
export class MainComponent {
private messages: Array<any>;
constructor(private apiService: ApiService){}
getMessages(){
this.apiService.getMessages(gotMessages);
}
gotMessages(messagesFromApi){
messagesFromApi.forEach((m) => {
this.messages.push(m) // EXCEPTION: TypeError: Cannot read property 'messages' of undefined
})
}
}