我将首先问两个问题,所以如果有人知道它不必阅读这篇长篇文章:
- 但是,如何在自定义 JavaScript 文件(无论是 .js 还是 .ts - 带有编译的打字稿)的 IntelliSense 列表中抑制大量不需要的项目?
- 我怎样才能很好地控制我需要的东西?_references.js 似乎是一个很好的起点(供全球参考)
- 任何人都可以解释 .validate-vsdoc.js 和 .intellisense.js 和 ///
当我观看 Mads Kristensen 的视频Visual Studio:JavaScript/TypeScript 中的 C# 类 Intellisense 时,
我注意到 Mads 的“数据”JavaScript 变量的 Intellisense 显示了与当前上下文相关的对象、函数和属性的简短列表。
我使用 VS 2013 MVC 项目的默认值。
我的列表要长得多,这使得 Intellisense 几乎毫无用处:
在我的 _references.js 我有这个(我想 Mats 也有)
/// <autosync enabled="true" />
/// <reference path="modernizr-2.6.2.js" />
/// <reference path="jquery-1.10.2.js" />
/// <reference path="bootstrap.js" />
/// <reference path="respond.js" />
/// <reference path="jquery.validate.js" />
/// <reference path="jquery.validate.unobtrusive.js" />
/// <reference path="rads.js" />
/// <reference path="../models/accountviewmodels.cs.js" />
在我的隐式(Web)参考组的 JavaScript IntelliSense 参考部分中,我有默认值:
libhelp.js
sitetypesWeb.js
domWeb.js
underscorefilter.js
showPlainComments.js
~/Script/_references.js
所有文件(除了 _references.js)都位于这个文件夹中(它们没什么意义):
C:\Program Files (x86)\Microsoft Visual Studio 12.0\JavaScript\References\
正如您从第二张图片中看到的那样,我从这些文件中获得了一些 IntelliSense 方法:
Dhtml.js
EcmaScript.js
ecma.js
但是这些属性和方法从何而来:
$1, $2, ..., $10
ABORT_ERR, ALIASED_LINE_WIDTH_RANGE, ....
在互联网上搜索时,我发现了 Google 闭包编译器的文件:webgl.js,其中包含许多这些大写的属性。
我知道JavaScript IntelliSense 文章讨论了 JavaScript IntelliSense 如何根据您当前的上下文列出可用的对象、函数、属性和参数,而扩展 JavaScript IntelliSense 文章讨论了进一步扩展 IntelliSense。
- 但是,如何在自定义 JavaScript 文件(无论是 .js 还是 .ts - 带有编译的打字稿)的 IntelliSense 列表中抑制大量不需要的项目?
- 我怎样才能很好地控制我需要的东西?_references.js 似乎是一个很好的起点(供全球参考)
- 任何人都可以解释 .validate-vsdoc.js 和 .intellisense.js 和 ///
当我看到 Mads 做得很好时,我很生气 :) 谢谢,Rad