我有对象:
public functions = {
chosenYearHandler: null,
chosenMonthHandler: null
};
有方法:
public chosenMonthHandler(normalizedYear: any) {
this.form.controls["date"].setValue(normalizedYear);
}
我将对象的填充方法如下:
this.functions.chosenMonthHandler = this.chosenMonthHandler;
然后在模板中,我尝试调用以下方法:
(monthSelected)="functions.chosenMonthHandler($event, dp)"
它说:
FilterMobileComponent.html:420 ERROR TypeError: Cannot read property 'chosenYearHandler' of undefined
at Object.eval [as handleEvent]
我该怎么办?
答案 0 :(得分:1)
尝试使用“扁平箭头”定义您的函数,如
chosenMonthHandler= (normalizedYear: any) => {
this.form.controls["date"].setValue(normalizedYear);
}
因此,“ this”将成为组件(我只是找到了有关平面箭头功能的不错的explanation)