需要使用打字稿的 npm 模块

requiring an npm module using typescript

我正在使用打字稿开发一个新的 nodejs 5.10.1 项目。

我安装了 tsc 1.8.9 版本

我创建了一个包含以下配置文件的新项目:

package.json

{
  "name": "mdb-analyze",
  "version": "1.0.0",
  "description": "",
  "main": "mdb-analyze.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "command-line-args": "^2.1.6"
  }
}

tsconfig.json

{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es6",
        "noImplicitAny": false,
        "sourceMap": false
    },
    "exclude": [
        "node_modules"
    ]
}

typings.json

{
  "name": "mdb-analyze",
  "version": false,
  "dependencies": {}
}

这是我的主要 mdb-analyze.ts 文件:

import * as commandLineArgs from 'command-line-args';

var cli = commandLineArgs([
  { name: 'verbose', alias: 'v', type: Boolean },
  { name: 'fjso', alias:'f',type: String, multiple: true, defaultOption: true },
  { name: 'help',alias:'h',type:Boolean }
])

var params = cli.parse();
if (params.help || !params.fjso || params.fjso.length == 0) {
    console.info(cli.getUsage());
} else {

}

当我尝试使用 tsc 编译时出现以下错误:

mdb-analyze.ts(5,34): error TS2307: Cannot find module 'command-line-args'.

welp 我被告知要使用 typings 来加载我想要的模块的 typescript 定义。但搜索打字不显示此模块。我是打字稿的新手,对下一步该做什么感到很困惑。

如能提供有关此问题的任何信息,我们将不胜感激。

如果没有可用的类型,您可以编写自己的 d.ts 包含必要类型声明的文件。

有一些样本供您参考:link, link

希望对您有所帮助。