需要使用打字稿的npm模块

时间:2016-04-12 09:24:52

标签: node.js typescript tsc typescript1.8

我正在使用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'.

欢迎我告诉我使用打字加载我想要的模块的打字稿定义。但搜索打字并没有显示这个模块。我是打字稿的新手,对下一步该做什么很困惑。

非常感谢有关该问题的任何信息。

1 个答案:

答案 0 :(得分:2)

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

您可以找到一些示例:linklink

希望这有帮助。