ฉันมีส่วนประกอบที่เรียกใช้บริการเพื่อดึงข้อมูลจากจุดสิ้นสุด 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
)