Angular 角度:参考误差:';功能';没有定义
我有一个简单的应用程序,点击一个按钮就可以将两个数字相加 我得到一个Angular 角度:参考误差:';功能';没有定义,angular,typescript,Angular,Typescript,我有一个简单的应用程序,点击一个按钮就可以将两个数字相加 我得到一个ReferenceError:addNumber未定义,其中addNumber是由“onClick”处理程序调用的函数 onClick(num1, num2){ addNumber(num1, num2).then((result) => this.result = result)); } addNumber(x, y){ return new Promise((resolve) => {
ReferenceError:addNumber未定义
,其中addNumber是由“onClick”处理程序调用的函数
onClick(num1, num2){
addNumber(num1, num2).then((result) => this.result = result));
}
addNumber(x, y){
return new Promise((resolve) => {
x = parseInt(x);
y = parseInt(y);
setTimeout(() => resolve(x+y), 2000)
})
}
}
但是,如果我将函数
关键字添加到addNumber
中,它可以工作,但据我所知,对于Typescript,可以选择使用函数
关键字
为什么单击按钮时未定义addNumber?对现有的类自身函数使用此
onClick(num1, num2) {
this.addNumber(num1, num2).then((result) => this.result = result));
}
访问类成员时,您必须使用
此
引用它们:
this.addNumber(num1, num2).then((result) => this.result = result));
当您将
函数
关键字添加到addNumber
时,您将使其成为本地函数,而不是类成员,从而使其无需此
引用即可访问。有什么区别?没有看到您的。我的解释了为什么在函数运行之前添加函数
。我选择这一个作为答案,因为虽然解决方案与@Sajeetharan的相同,但您解释了问题所在