我不确定如何清除此警告:
WARNING - actual parameter 1 of
CanvasRenderingContext2D.prototype.drawImage does not match formal parameter
found : Element
required: (HTMLCanvasElement|HTMLImageElement|HTMLVideoElement|null)
ctx.drawImage( poolCanvas, rect.x, rect.y );
以下是相关代码:
var /** @type {HTMLCanvasElement|Element} */ poolCanvas = document.createElement('canvas');
var /** @type {CanvasRenderingContext2D} */ ctx;
...
ctx.drawImage( poolCanvas, rect.x, rect.y );
我尝试了各种类型声明的组合,但我无法摆脱这种警告。
我在这里做错了什么?
答案 0 :(得分:4)
您需要输入转换为document.createElement
:
var poolCanvas =
/** @type {!HTMLCanvasElement} */ (document.createElement('canvas'));
注意额外的parens - 它们是类型转换
所必需的