我正在测试Microsoft的新代码编辑器:Visual Studio Code。
我在Windows 7下,我尝试这个例子:https://code.visualstudio.com/Docs/nodejs
但是当我尝试添加/// <reference path="/typings/node/node.d.ts"/>
有人知道如何解决这个问题吗?这是一个错误还是问题来自我的机器?
答案 0 :(得分:24)
TSD 是TypeScript定义,而TypeScript是Microsoft的JavaScript的类型超集,可编译为纯JavaScript。如果您只是想使用VSCode开发像我一样的基于JavaScript的node.js项目,那么您不需要了解这些。
为了解决您的问题,我认为更好的方法是将 TSD包管理器安装为全局模块。这样您就可以在全局范围内使用 tsd 命令。
npm install tsd@next -g
然后转到项目的根文件夹,并键入
tsd install node
这将自动创建一个文件夹“typings / node&#39;使用名为&#39; node.d&。39的.ts文件。
如果您还需要针对第三方模块(如express.js或async.js)的IntelliSense,您可以自行添加
tsd install express
就像&#39; npm&#39;你已经熟悉的是node.js的包管理器,&#39; tsd&#39;是TypeScript定义的包管理器(但不适用于TypeScript本身)
这里有一个显示可用存储库的列表。
将所有.tsd文件下载到&#39; typings&#39;文件夹,你仍然需要手动将这些特殊注释放在每个.js文件的开头,以帮助VSCode查找节点和表达的定义,所以现在VSCode知道类和函数的API细节。
/// <reference path="typings/node/node.d.ts"/>
/// <reference path="typings/express/express.d.ts"/>
答案 1 :(得分:2)
我昨晚刚试过,但效果很好。
你不应该自己提供参考。您应该让VS Code为您执行此操作,按&#34; Ctrl +。&#34; (这应该是您应该按下的点键)在标记的__dirname上,并选择网站上所述的TypeScript定义文件选项。
VS Code将在项目文件夹下创建目录结构,下载文件并添加对app.js express应用程序的引用。
答案 2 :(得分:0)
正如@HenryLi所提到的,你需要为Node获取一个带有类型定义的文件。但是TSD已经被弃用了很长一段时间了。不过不用担心!现在,类型定义由Microsoft直接管理,并通过npm
!
要解决您的问题,只需运行此命令:
npm install --save -g @types/node
答案 3 :(得分:-2)
(编辑:VS Code需要我打开一个目录,而不是单个文件让intellisense正常工作)
对我来说同样的问题。
这不起作用:
添加///对'node / node.d.ts'的引用
什么都没发生......
但这确实有效,VS Code正在响应。 (编辑:停止警告,但不以这种方式自动完成):
将'__dirname'标记为全局