找不到'on-finished'模块

时间:2016-08-01 20:22:51

标签: javascript node.js express typescript

我正在尝试运行节点服务器。我使用Express和Typescript以及VSCode作为编辑器。如果我编译并尝试运行我的app.js,我会收到此错误:

> Error: Cannot find module 'on-finished'
>     at Function.Module._resolveFilename (module.js:440:15)
>     at Function.Module._load (module.js:388:25)
>     at Module.require (module.js:468:17)
>     at require (internal/module.js:20:19)
>     at Object.<anonymous> (C:\nodeProjects\node_modules\express\node_modules\finalhandler\index.js:16:18)
>     at Module._compile (module.js:541:32)
>     at Object.Module._extensions..js (module.js:550:10)
>     at Module.load (module.js:458:32)
>     at tryModuleLoad (module.js:417:12)
>     at Function.Module._load (module.js:409:3)

我的app.ts:

/// <reference path="_all.d.ts" />
import * as express from "express";
var app = express();

app.get('/', function (req, res) {
  res.send('Hello World!');
});

app.listen(3000, function () {
  console.log('Listening on port 3000!');
});

我的tsconfig:

{
    "version": "1.7.5",
    "compilerOptions": {
        "target": "es5",
        "module": "commonjs",
        "sourceMap": true,
        "emitDecoratorMetadata": true,
        "experimentalDecorators": true,
        "outDir": "../cmpl"
    }
}

我的项目结构:

- .vscode/
- cmpl/
- src/
-- node_modules/
-- public/
-- routes/
-- typings/
-- views/
-- _all.d.ts
-- app.ts
-- package.json
-- tsonfig.json

我不知道问题出在哪里。如果我正在查看node_modules文件夹。该模块存在。

格尔茨

1 个答案:

答案 0 :(得分:0)

您的问题是

import * as express from "express";

我使用快递在我的应用程序上测试完全相同的行,抛出了几乎相同的错误,因此您最好使用变量,就像我一直这样,并且它从未让我失望。

var express = require('express')

应该没有任何问题。