Node.js 在我的节点应用程序中,路由器怎么可能是“未定义的”?

Node.js 在我的节点应用程序中,路由器怎么可能是“未定义的”?,node.js,express,Node.js,Express,我正在调试我的节点应用程序,express已经定义,但在跨过var路由器线路之后,路由器仍然没有定义,这怎么会发生呢 如果您必须: var express = require('express') var router = express.Router(); 如果要猜测app.useapp.router这一行 可能是罪魁祸首…?输入相关代码。你是如何验证它的未定义的?当我用Eclipse调试它时,它是未定义的,上面只有2行。没有,我添加了其余的行,我试图使它更简单,但可能是行app.useap

我正在调试我的节点应用程序,express已经定义,但在跨过var路由器线路之后,路由器仍然没有定义,这怎么会发生呢

如果您必须:

var express = require('express')
var router = express.Router();
如果要猜测app.useapp.router这一行


可能是罪魁祸首…?

输入相关代码。你是如何验证它的未定义的?当我用Eclipse调试它时,它是未定义的,上面只有2行。没有,我添加了其余的行,我试图使它更简单,但可能是行app.useapp.router;是导致问题的原因。您使用的是什么版本的Express?如果您使用的是Express4,这里的很多内容都不推荐使用和/或无法使用。
var express = require('express')
//  , fancy_scripts = require('./fancy_scripts')
  , routes = require('./routes')
  , user = require('./routes/user')
  , http = require('http')
  , path = require('path');

var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');

// New Code
var mongo = require('mongodb');
var monk = require('monk');
var db = monk('localhost:27017/sparks');

var app = express();

// all environments
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.engine('html', require('ejs').renderFile);
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.static(__dirname + '/fancy_scripts'));
app.use('/fancy_scripts',  express.static(__dirname + '/fancy_scripts'));


app.use(function(req,res,next){
    req.db = db;
    next();
});

app.get('/', routes.index);

//var router = express.Router();
//
///* GET home page. */
//router.get('/', routes.index);