Typescript 2无法解析外部节点模块

时间:2017-01-04 14:49:25

标签: javascript node.js typescript typescript2.0

我一直在尝试使用koa和Typescript2.0进行一些原型设计。

我已经使用以下tsconfig.json设置了一个简单的项目:

{
    "compilerOptions": {
        "outDir": "./bin/",
        "sourceMap": true,
        "noImplicitAny": true,
        "module": "commonjs",
        "target": "es6",
        "jsx": "react",
        "typeRoots": [
            "node_modules/@types"
        ],
        "types": [
            "node"
        ]
    },
    "include": [
        "./src/**/*"
    ]
}

我通过npm install --save @types/node安装了节点定义文件,我现在正尝试导入一个import Morgan = require('koa-morgan')的节点模块,但这会导致错误:error TS7016: Could not find a declaration file for module 'koa-morgan'. 我正在使用VScode并且我正确地更新了tsdk,所以这不是问题。

我错过了什么? 提前谢谢!

1 个答案:

答案 0 :(得分:3)

您应该获得<script>的打字,并以与koa-morgan相同的方式包含它们,或者如果它们不可用且您有时间并且愿意 - 自己创建一个。

否则只需导入默认的javascript方式:

node

但是,如果没有打字稿的类型检查,那将使你没有