我正在使用NetBeans,特别是HTML5 &PHP包。目前我正在制作一款使用HTML5画布元素的游戏。我有一个全局变量叫context
:
var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');
显然,IDE不知道context
是什么类型,因为它无法首先找到canvas
的类型,并且它不可能知道getContext()
在调用canvas
时将返回什么。我希望NetBeans为context
提供代码完成功能,假设它代表特定类型(即CanvasRenderingContext2D
)。在做了一些研究之后,我发现了这个:https://blogs.oracle.com/netbeansphp/entry/defining_variable_type_in_a。该站点声明,通过提供一个PHPDoc注释,可以在PHP中使用这样的特性,注释如下:我知道这与PHP有关,但我决定在JavaScript中尝试一下:
/* @var context CanvasRenderingContext2D */
不幸的是,上面没有工作。我想也许NetBeans出于某种原因不知道这种类型,并尝试了一些更简单的:
/* @var test HTMLImageElement */
同样,除了所有JavaScript对象的原生test
之外,没有关于CC_9的建议。
那么,这可能吗?如果有人能提供一个解决方案,我会很感激。提前感谢!
JavaScript使用的是JSDoc,而不是PHPDoc,所以你需要使用
/** @type HTMLImageElement */
var myImage;