RESTful 끝점에서 데이터를 가져 오는 서비스를 호출하는 구성 요소가 있습니다. 이 서비스는 해당 데이터를 가져온 후 실행할 콜백 함수를 제공해야합니다.
문제는 콜백 함수를 사용하여 구성 요소 변수의 기존 데이터에 데이터를 추가하려고 할 때 EXCEPTION: TypeError: Cannot read property 'messages' of undefined
. this
정의되지 않은 이유는 무엇 입니까?
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
})
}
}
tsc -v
)