我使用PhpStorm,当我使用JSDoc将参数定义为类型jQuery时,它会给我警告。
我尝试将jQuery配置为库,但它似乎无法正常工作。
这是我的代码:
/**
* @param {jQuery} $button
*/
function setActive($button)
{
// The code is working fine, but PhpStorm is giving the warning
// "Unresolved function or method addClass()" here.
$button.addClass("active");
// If I try to do this, no warning is displayed.
$("#test").addClass("test");
}
修改
智能感知中出现了一些方法(我不确定为什么),但不幸的是addClass
不是其中之一。
答案 0 :(得分:2)
答案 1 :(得分:0)
结果证明jQuery的Typescript使用大写字母J,因此JQuery
而不是jQuery
。
像这样更改jsdoc即可解决此问题。
/**
* @param {JQuery} $button
*/
否则,可以通过在项目中的某个地方创建一个非常简单的打字稿文件来启用小写jQuery
。
例如,您的文件可以命名为jquery.d.ts
,并具有以下内容。
/**
* Must have the @types/jquery typescript installed
* either via PHPStorm -> Javascript -> Libraries
* or `npm i @types/jquery`
*/
interface jQuery<TElement = HTMLElement> extends JQuery {}