TypeScript/Javascript - TypeError this.函数不是函数



我对TypeScript有点陌生,但以前知道JavaScript。我有我的代码为我的应用程序车轮小游戏,我得到以下错误在我的控制台。

this.easeOut is not a function

代码如下(仅是什么重要的问题我想):

spin() {
const spinAngleStart = Math.random() * 10 + 10;
this.spinTime = 0;
this.spinTimeTotal = Math.random() * 3 + 4 * 1000;
this.rotateWheel(spinAngleStart);
}
rotateWheel(spinAngleStart: number){
this.spinTime += 30;
if(this.spinTime >=  this.spinTimeTotal) {
this.stopRotateWheel();
return;
}
*const spinAngle = spinAngleStart - this.easeOut(this.spinTime, 0, spinAngleStart, this.spinTimeTotal);*
this.startAngle += (spinAngle * Math.PI / 180);
this.drawRouletteWheel();
console.log(this.spinTimeTotal);
console.log(this.spinTime);
this.spinTimeout = setTimeout(this.rotateWheel, 30);
} 
easeOut(t, b, c, d) {
const ts = (t /= d) * t;
const tc = ts * t;
console.log(ts);
console.log(tc);
return (b+c * (tc + -3*ts + 3*t));
}

正如你所看到的,easeOut()确实存在于我的rotateWheel()函数的同一层次结构中,如果不发送任何错误,那么其他所有东西都存在,所以我不知道为什么它会发送错误。

错误被发送到带有星号

的行

您可以选择setTimeout(() => this.rotateWheel(), 30)setTimeout(this.rotateWheel.bind(this), 30);。否则,当调用rotateWheel时,this被绑定到window对象(或节点中的global对象)。

最新更新