![](/img/trans.png)
[英]JavaScript Function Parameter Intellisense in Visual Studio 2015
[英]AngularJS Intellisense in Visual Studio 2015
最近,我开始使用Visual Studio 2015 Community而不是Brackets。 就像在网站上所说的那样,它对Angular具有某种支持,但是,我什至没有看到它而不是HTML文件。 甚至将变量“ angular”悬停在其上时,也会打印
angular <type unknown>
我添加了一张图片来解释我的意思。
我试图将JavaScript TextEditor引用更改为Implicit(Web),但是,重新启动后,它又回到了Implicit(Windows)。
我使用Web Essentials,并且知道它具有创建Intellisense JS和TS文件的功能,但是始终禁用此功能。 我打开了项目中的每个目录并进行了检查,此功能始终处于关闭状态。
另外,我尝试使用_references.js手动创建Scripts目录,但是它的工作原理非常好... baaad,我需要将其移至另一个目录并将其返回到以前的目录,以使自动同步等选项可用。 关于_references.js也是一样
为了使这种情况更清晰:我手动创建_references.js。 现在它具有Anto-Sync和Update References选项。 —>重新启动Visual Studio 2015 —> _references.js不再具有此类选项。 但是,即使在重新启动之前,如果我对其进行更新,它将跳过根文件夹中除app.js之外的所有内容。
PS AngularJS IntelliSense可在HTML文件中运行,即可以放置ng- *属性。 所以...我认为,有些事情在VS 2015中不起作用。PSS我将NodeJS用于WebApp的服务器部分。
好吧,我知道您正在寻找一种无论如何都可以与Instellisense和Visual Studio一起使用的解决方案。
我也使用Visual Studio,但是我转而使用TypeScript。 它实际上是在编写一种扩展的强类型JavaScript。 这意味着您可以声明变量的类型。 示例: var x:string = 'test';
当然有优点和缺点。 我喜欢这些优点,所以才使用它。
*.ts
文件到*.js
文件的转换过程。 *.d
文件,它们实际上只是用于检查JavaScript函数定义的头文件。 #2的优势很大。 它可以防止您执行错误的代码,例如:
setTimeout(myFunc, 'abc');
这对于第二个参数应该是数字而不是字符串不起作用。 但是正如我所说,您必须将定义文件添加到TypeScript解决方案中才能正常工作。
如果您想尝试一下(您不会后悔),请按照以下步骤操作:
我相信这是一个比普通的Intellisense更好的解决方案,因为它还可以防止将错误的参数发送给angular函数。 由于JavaScript允许任何变量为任何类型,因此当JS中的任何内容中断时,实际上很难进行代码审查。 使用TS,这不应该发生。 如果这样做,编译将失败。
您是否曾在想要Intellisense的js文件的开头尝试过使用此功能?
/// <reference path="pathToAngular.js" />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.