Intellisense 与 Visual Studio Code 中的第三方 JavaScript 库

Posted

技术标签:

【中文标题】Intellisense 与 Visual Studio Code 中的第三方 JavaScript 库【英文标题】:Intellisense with third party JavaScript libraries in Visual Studio Code 【发布时间】:2015-07-09 12:23:38 【问题描述】:

我今天一直在玩 Visual Studio Code,但在获取智能感知以处理 javascript 项目中的某些代码时遇到了问题。我读过这篇文章http://www.johnpapa.net/intellisense-witha-visual-studio-code/,其中谈到了这个问题,展示了如何将智能感知与角度结合使用。我一直在查看一些使用 JavaScript 库 PlaygroundJS 的示例项目,在这些项目中使用智能感知会非常有用,因为它们通常被分成多个文件,如果能够查看定义,而不是手动跟踪它们。但是,当我查看快速操作下的可用选项时,我没有看到类似的东西,这在我找到的示例中:

添加 /// 对 angularjs/angular.d.ts 的引用

只是将变量标记为全局的选项。所以我想知道,是否可以将智能感知添加到这个库以及项目中的其他文件?

我确实发现可以在每个文件的顶部添加对它们的引用:

/// <reference path="Global.js" />
/// <reference path="engine/Score.js"/>
/// <reference path="engine/Camera.js"/>
/// <reference path="engine/Engine.js"/>
/// <reference path="engine/EnemyManager.js"/>
/// <reference path="engine/EntityManager.js"/>

但是这个手动过程既费时又笨拙。有没有办法自动找到这些引用?

【问题讨论】:

【参考方案1】:

是的,现在您可以为所有 d.ts 文件引用创建一个 tsd.d.ts 文件。把它放在你的项目中一次,然后每个文件都可以引用它。

或者使用没有文件的 tsconfig.json(保持未定义)。

这个故事会变得更好

【讨论】:

没有文件的 tsconfig 究竟会做什么?【参考方案2】:

如果它无法识别 Angular 模块并自动建议 d.ts 导入,您可以手动将 angularjs 类型添加到您的项目中。

http://definitelytyped.org 描述了如何将类型导入到您的项目中。我建议使用 TypeScript 定义管理器,因为它使您的代码文件中的参考 cmets 保持简洁。

【讨论】:

我并没有尝试使用角度,这只是我看到的一个例子。我正在使用 PlaygroundJS 并且想知道是否有可能为此获得智能感知。不过我会看看那个网站。

以上是关于Intellisense 与 Visual Studio Code 中的第三方 JavaScript 库的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ASP.NET MVC 视图上将 XSD Schema 与 Visual Studio Intellisense 结合使用

Microsoft Visual Studio 2012 RC C++ IntelliSense 错误

Visual Studio 2005 - '更新 IntelliSense' 挂断

Javascript Intellisense 不再适用于在 Visual Studio 2022 中创建初始对象后分配的对象属性

为啥 Visual Studio 2010 (Intellisense) 会停止生成接口指针?

Visual Studio 2008 intellisense用于枚举类型