【问题标题】:node.js + express error: Cannot read property 'handle' of undefinednode.js + express 错误:无法读取未定义的属性“句柄”
【发布时间】:2013-12-02 13:00:57
【问题描述】:

我是 node.js 的新手。我正在尝试使用 express 模块的脚本。 我已经安装了 express,正在使用,

npn install express

当我运行代码时出现错误

TypeError: Cannot read property 'handle' of undefined
at Function.app.use (c:\node_modules\express\lib\application.js:113:9)
at Object.<anonymous> (c:\node\uploadResize.js:13:6)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:901:3

如何解决这个问题?

这是我的节点脚本。

var http    = require('http'),  // Libraries
util    = require('util'),
fs      = require('fs'),
couch   = require('cradle'),
connect = require('express'),
endsWith,   // Internal Functions
determineMimeType,
upload;

connect()
.use(connect.bodyParser())
.use(upload)
.listen(3000);

upload = function (req, res, next) {
    // function body
}

【问题讨论】:

  • 产生这种错误的代码是什么?
  • @ShimonRachlenko 我已经添加了代码。

标签: javascript jquery node.js


【解决方案1】:

您需要在将upload 传递给app.use 之前分配一个值

【讨论】:

    【解决方案2】:

    使用这样的东西:

    var app = express();
    
    app.configure(function() {
      var hourMs = 1000*60*60;
      app.use(express.static('c:\\node', { maxAge: hourMs }));
      app.use(express.directory('c:\\node'));
      app.use(express.errorHandler());
    });
    

    【讨论】:

      【解决方案3】:

      代码不是 npm install express ??

      然后你的应用程序在同一目录中的目录 node_modules

      C:\node\node_modules C:\node\app.js

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-30
        • 1970-01-01
        • 1970-01-01
        • 2018-01-21
        • 1970-01-01
        • 2020-10-15
        相关资源
        最近更新 更多