drawFace() {
for (let angle = 0; angle < 360; angle += 6) {
this.drawer.draw(angle, ctx => {
ctx.moveTo(0, -this.r);
if (angle % 30 === 0) {
ctx.lineWidth = 2;
ctx.lineTo(0, -this.r + 10);
ctx.font = '13px Arial';
ctx.textAlign = 'center';
ctx.fillText(angle / 30 || 12, 0, -this.r + 25);
} else {
ctx.lineTo(0, -this.r + 5);
}
});
//...
上記記載部分のアロー関数をfunction(){}を使った通常関数に書き直して下記のようにすると、
this.drawer.draw(function(angle, ctx) {
...}
この下記部分の、
draw(angle, func) {
this.ctx.save();
this.ctx.translate(this.width / 2, this.height / 2);
this.ctx.rotate(Math.PI / 180 * angle);
this.ctx.beginPath();
func(this.ctx);
this.ctx.stroke();
this.ctx.restore();
}
下記該当箇所が関数ではないというエラーが表示されてしまいます。
func(this.ctx);
以前教わったように、this
を関数外で定数に代入して呼び出してみたりなど、試行錯誤して試みてみましたがうまくいきません。
どのあたりを確認して修正したらいいでしょうか。
よろしくお願いします。
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?