VS Code 中的 jQuery 智能感知

Posted

技术标签:

【中文标题】VS Code 中的 jQuery 智能感知【英文标题】:jQuery intellisense in VS Code 【发布时间】:2017-06-06 05:59:36 【问题描述】:

我试过这个:

JQuery intellisense in Visual Studio Code

还有这个:

http://shrekshao.github.io/2016/06/20/vscode-01/

但它什么也没做,VS Code 只是不会添加 jquery intellisense,我已经尝试解决这个问题好几个小时了,但它就是行不通

【问题讨论】:

您能否提供更多信息。 我已经尝试了链接上显示的所有内容,您还需要什么? JQuery intellisense in Visual Studio Code的可能重复 【参考方案1】:

大多数博客帖子现在都已过时,因为我们终于在 1.8+ 版本中实现了自动类型获取 - 您不再需要自己安装类型。

我建议阅读官方文档,它始终是最新的:https://code.visualstudio.com/docs/languages/javascript

如果你使用 npm 并且在你的项目中有一个 package.json 并且 jQuery 列在那里,它应该已经可以工作了。

如果你不使用npm,你可以在项目根目录下创建jsconfig.json文件,内容如下:


    "typeAcquisition": 
        "include": [
            "jquery"
        ]
    


【讨论】:

嗨 kwood,我可以在没有项目的情况下将 jquery intellisense 添加到 vs 代码吗?我在不同的环境中编辑了许多任意的 js 文件。 这在一台机器上对我有用,但在另一台机器上却不行。 (两者都相同。)如果像这样手动包含 jquery 支持,有什么可能会阻止它的洞察力吗? @anaval :刚刚测试过,它也适用于AngularJS"typeAcquisition": "include": [ "jquery", "angular" ] 【参考方案2】:

在您的项目根目录中键入此命令:

npm i --save @types/jquery

【讨论】:

我尝试在全球范围内安装它。它被添加到全局模块中,但在 vs 代码中没有生效。有任何想法吗 ? (是的,我在全局安装后尝试关闭和打开 vs 代码) @eranotzap 我相信这个命令必须在项目中运行,而不是全局运行。当你全局安装它时它不起作用。【参考方案3】:

我认为主要原因是 Vscode 没有解析 Jquery.js 文件,因为原始 jquery 文件被缩小,导致 vscode 停止文件的标记化。 要解决此问题,请打开 jquery.js 文件,右键单击并选择格式。标记化过程将完成。

【讨论】:

【参考方案4】:

我遇到了同样的问题,谷歌把我带到了这里。我添加了类型 jsconfig.json 和 "typeAcquisition" 仍然没有。

原来你必须安装 node 和 npm。即使您没有将它们用于包管理,而是从 CDN 导入 jquery。

来自文档

许多流行的库都附带了类型文件,因此您可以自动为它们获取 IntelliSense。对于不包含类型的库,VS Code 的自动类型获取将自动安装社区维护的类型文件

自动类型获取需要 npmjs,即 Node.js 包管理器,它包含在 Node.js 运行时中。在这张图片中,您可以看到 IntelliSense,包括方法签名、参数信息和流行 lodash 库的方法文档。

https://code.visualstudio.com/docs/nodejs/working-with-javascript

所以 vs code 使用 npm 进行自动类型获取。

可能是超级基本的,但它解决了我的问题,所以我希望它也可以帮助其他人。

我还使用了 kwood 描述的 jsconfig.json 中的配置。不确定我是否需要在安装 npm 后手动指定它,但它正在工作,所以我没有问问题

【讨论】:

【参考方案5】:

帮助我的是使用非缩小版的 jQuery,然后使用

/// <reference path="./jquery-3.4.1.js" />

在我的 JS 文件的开头。

(我正在编写客户端代码,即直接使用&lt;script&gt; 标签添加到页面的 ES5 JavaScript。)

【讨论】:

以上是关于VS Code 中的 jQuery 智能感知的主要内容,如果未能解决你的问题,请参考以下文章

在 VS Code 中的 TypeScript 中使用 jQuery

Visual Studio 2017 Enterprise中的jQuery智能感知[重复]

vs code 智能感知结果仅限于 1

VS Code 中 Javascript 的自动补全/建议/智能感知

如何让 VS Code 智能感知识别附加到现有类的新方法

VS2017 Javascript 智能感知