在TypeScript中导入节点并使用typing表达

时间:2016-03-15 13:49:12

标签: node.js typescript visual-studio-code

我正在尝试在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版,我在全球范围内安装了打字稿。

3 个答案:

答案 0 :(得分:30)

自上个月发布TypeScript 2.0以来,安装打字的推荐工具是我们可信赖的老朋友npm,而不是typingstsd

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