当我使用httpClient获取一个对象数组时,我可以访问数组中每个对象的属性,但是我无法访问方法。我不明白为什么,我怎么能这样做。
this.interventionService.getInterventions().subscribe(interventions =>
{
interventions.forEach(it => {
console.log(it.InterventionId); // property can be accessed
console.log(it.myMethod()); // myMethod cannnot be accessed
// I get an error: 'myMethod is not a function'
});
});
但是,如果我创建一个新对象,我可以访问这些方法:
var it = new Intervention();
it.myMethod(); // no error
感谢您的帮助
答案 0 :(得分:0)
您需要使用this
为方法设置正确的bind
上下文。
this.interventionService.getInterventions().subscribe(interventions => {
interventions.forEach(it => {
it.myMethod.bind(it)();
});
});