Ich habe eine Komponente, die einen Dienst aufruft, um Daten von einem RESTful-Endpunkt abzurufen. Dieser Dienst muss eine Rückruffunktion erhalten, die er nach dem Abrufen der Daten ausführen kann.
Das Problem ist, wenn ich versuche, die Rückruffunktion zu verwenden, um die Daten an die vorhandenen Daten in der Variablen einer Komponente anzuhängen, erhalte ich eine EXCEPTION: TypeError: Cannot read property 'messages' of undefined. Warum ist thisundefiniert?
TypeScript-Version: Version 1.8.10
Controller-Code:
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
})
}
}
tsc -v)