问题标签 [javascript-intellisense]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
typescript - Visual Studio 2015 隐藏错误列表中的 Javascript 错误
我最近开始在 Visual Studio 2015 中使用 mvc6 和 knockoutJS。当我在我的打字稿文件中使用敲除时,我在所有与 jquery 或敲除(或任何库)相关的内容上都出现红色下划线,并且它Cannot find name 'ko'
在我的错误列表中显示。我知道 IDE 无法确定这些 javascript 对象确实存在,但这肯定是每个人都会遇到的问题吗?
如何从我的 javascript/typescript 文件中删除智能感知?
javascript - 如何在 Visual Studio Intellisense 中记录 JavaScript 配置对象
我使用 Visual Studio 的 JavaScript Intellisense 功能已经有一段时间了,并且对它为标准 API 提供建议的能力非常满意,但我发现我无法让 Visual Studio 理解配置对象(即具有多个可选的单个对象或所需的属性作为函数的参数)。
官方的JSDoc 语法建议,如果一个参数应该有属性,你可以@param
为每个参数创建一个单独的行并使用点表示法:
但是,Visual Studio 无法识别这一点 - 它会将 、 和 呈现config
为config.name
三个config.gold
单独的顶级参数。
更糟糕的是,方法主体中的 AutoComplete 功能也不识别参数,更不用说它们的类型了:
在 Visual Studio 中似乎更接近的唯一解决方案是使用适当的文档(@constructor
和@property
标签)编写从未调用的构造函数,这使我编写了很多死代码,也违背了 JavaScript 的无类心态(这是我首先使用配置对象的原因)。它甚至不让我写配置对象!
不仅如此,我还知道 Visual Studio 不需要它。例如,当我写出对这个库函数的调用时,它能够收集到参数对象需要名为id
、source
和的属性,并target
在我为函数的参数创建对象文字时建议这些名称 - 并且没有一行的文档。据推测,它来自一个简单的事实,即它们被使用:
当然,如果这些属性不在对象上并且不是正确的类型,则该方法确实会引发异常,但仍然如此。
编辑:我最近能够在我自己的代码中使用对象字面量参数来复制效果——我用一个定义明确的对象调用了一个函数,当我在代码的其他地方再次调用该函数时,它给了我 Intellisense 建议。但是我仍然没有函数体内的类型信息或语义访问。
Visual Studio 显然理解配置对象的概念,并且正在做一些逻辑来提供建议的属性。那个算法是什么?以及如何在不破坏代码的情况下利用它?
javascript - 在 Visual Studio 2013-2015 中制作 requireJS 智能感知
这似乎是一个简单的问题,但我在网上找不到任何关于它的信息,在 Stack Overflow 也没有。
我在使用 RequireJS(客户端)在 Visual Studio 2013/2015 下使 Intellisense 工作时遇到问题。
理论上你只需要在 _references.js 文件中添加一个引用,像这样:
但我一直通过有关“JavaScript 语言服务”的输出窗口收到此消息:
似乎该功能试图从 VS JavaScript 引用文件夹而不是我的真实文件夹加载我的“main.js”文件,该文件夹添加了很多“../”并且无法解决。事实上,除了所有的“../”之外,无法加载的建议路径都可以。
我尝试了多种相对路径组合来编写属性,但没有运气。
这很烦人,我在网上找不到任何关于这个特定问题的可靠信息。我发现的唯一参考是这个:
http://blog.nansen.com/2015/09/getting-visual-studio-intellisense-to.html
他们建议将 baseUrl 配置代码添加到 _references.js 文件中,这对我来说根本不起作用。
关于如何解决这个问题的任何想法?
顺便说一句:关于如何在 VS Code 下进行这项工作的任何参考资料?
javascript - 在 VS Intellisense 的 JSDoc 类型定义中记录数组
在我的 VS2015 JavaScript 应用程序中,我有一个从 REST API 获得的 JSON 对象,我使用 JSDoc@typedef
注释记录了该对象:
当我在使用这些 JSON 对象的方法的 JSDoc 注释中引用此类型时,我可以很好地获得 Intellisense 文档:
但是,我根本无法让它与数组一起使用 - 当我尝试索引数组时,我会得到“黄色三角形”菜单,当 VS 无法为您获取 Intellisense 上下文时会发生这种情况:
JSDoc 的其他推荐方法 using{Array.<JSON_Response>}
通知 VS 这response
是一个数组,但不提供 Intellisense 下的任何内容。Microsoft 自己的 XML 注释确实提供了这种功能,但仅限于函数参数 - 我无法进入对象内部,我也不想这样做,因为每次调用函数时我都必须添加此文档。
有没有办法在 JavaScript 的 VS Intellisense 中记录数组及其底层类型?
如果我必须编写代码,我想尽量减少副作用/能够将其排除在发布之外。
visual-studio-2015 - Visual Studio 2015 Angular Intellisense(角度材料设计)
我正在尝试使用 NuGet 包控制台为 VS 2015 获取 Intellisense 以进行 Angular Material Design。
我收到以下错误:
有什么建议么?
node.js - 如何让智能感知在带有 node.js 的 Visual Studio 代码中工作?
我正在为我的 node.js 项目使用 VS Code,但我的模块上没有智能感知。转到定义或查找所有引用也不起作用。如何让智能感知和所有这些功能(如Go to definition等)在 node.js 项目的 VS 代码中工作?
javascript - 强制 Intellisense 识别分配的变量类型
我有一个异步函数,它返回一个包含 4 个子数组的数组。然后我将该数组拆分为变量。我试图让智能感知来识别这些新变量,但它并没有真正起作用:
如您所见,我尝试使用标准 XML 智能感知文档记录变量,但我没有得到任何智能感知arrayOfA
到arrayOfD
.
但是,如果我保留文档和变量初始化,但没有为变量分配任何东西,我会得到适当的智能感知。
例如
arrayOfA
将在那里获得智能感知,但显然此时不会分配实际结果。