【问题标题】:how to use @types/node in node application如何在节点应用程序中使用@types/node
【发布时间】:2017-01-25 04:40:39
【问题描述】:

我在 Ubuntu 16.04 上使用 VSCode。我使用以下逗号创建了节点项目:

npm init
tsc --init

我创建了一个名为 index.ts 的新文件。我正在尝试使用 fs 和 readling 来读取文件内容。但是当我在 index.d.ts 顶部的代码行下方编写时:

import fs = require('fs');
import readline =  require('readline');

我遇到以下错误: 找不到模块'fs'找不到模块'readline'

进程都找不到。 我已经使用以下命令从here 安装了节点类型:

sudo npm install @types/node -global --save

谁能帮我解决这个错误?

【问题讨论】:

  • 您使用的是什么版本的打字稿?我认为只有(仍然是预发布的)typescript 2 支持这种方法,所以最好的答案取决于你想使用的版本。
  • 打字稿:1.8.10,npm:3.10.3,节点:v6.6.0。
  • @Burt_Harris,我必须添加 /// ?
  • 您可能可以这样做,但npm 在 1.8 下并不容易...找到正确要求的复杂路径。 typings 让这一切变得更容易。
  • @Burt_Harris 只是出于好奇为什么然后“从'fs'导入fs;”因错误 [ts] 模块“fs”没有默认导出而中断。?

标签: node.js typescript npm definitelytyped


【解决方案1】:

对于TypeScript 1.8,最好typings 安装节点类型。有关详细信息,请参阅快速入门:https://basarat.gitbooks.io/typescript/content/docs/quick/nodejs.html

【讨论】:

    【解决方案2】:

    据我所知,您有两种选择:

    1. (推荐)安装devDepencencie npm install @types/node --save-dev,会为http添加type模块。
    2. 创建一个index.d.ts 文件,声明http 模块的定义,例如: declare module 'http。此方法不会为 http 方法启用自动完成

    【讨论】:

      【解决方案3】:

      从 TypeScript 2.x 开始,所有类型都使用 npm 安装,如下所示:npm install @types/node

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-03-03
        • 1970-01-01
        • 2018-04-15
        • 2018-01-31
        • 1970-01-01
        • 2014-01-21
        • 1970-01-01
        相关资源
        最近更新 更多