我正在尝试在Microsoft guide之后的Visual Studio代码中设置TypeScript表达式/节点应用程序但是将其更改为使用TypeScript但是在使用typings
安装类型定义时,我似乎必须安装比指南更多的包。
我正在运行以下一对命令:
typings install node --ambient --save
typings install express --ambient --save
但是,尝试使用这些包进行构建会产生以下类型的错误:
error TS2307: Cannot find module 'serve-static'.
以下类型:
我可以通过安装所需的打字来解决这个问题,但似乎某些打字本身应该做。
我想检查一下我是否错过了自动引入依赖关系的基本步骤,或者指南是否过时了?
如果它是相关的,我的tsconfig.json:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"sourceMap": true,
"outDir": "bin",
"sourceRoot": "src"
},
"exclude": [
"node_modules",
"typings/browser.d.ts",
"typings/browser"
]
}
我的tsc是1.8.7版,我在全球范围内安装了打字稿。
答案 0 :(得分:30)
自上个月发布TypeScript 2.0以来,安装打字的推荐工具是我们可信赖的老朋友npm
,而不是typings
或tsd
。
npm install @types/node --save
使用npm,无需再担心“全局”或“环境”安装。
您也不必担心将<reference>
标记添加到源文件的顶部;只需将以下属性放入compilerOptions
中的tsconfig.json
,TypeScript编译器就会自动找到您安装的npm类型:
"typeRoots": [ "node_modules/@types" ]
这是一篇博文,更详细地解释了这一变化:https://blogs.msdn.microsoft.com/typescript/2016/06/15/the-future-of-declaration-files/
答案 1 :(得分:8)
我链接的教程现已更新,包括以下命令:
typings install node --ambient
typings install express serve-static express-serve-static-core --ambient
有关未自动下载依赖项的原因的信息,请参阅@cdbajorin的comment。
答案 2 :(得分:2)
为了让每个人都头疼,现在获得节点类型的神奇命令是:
typings install node --source env --global --save