从 Node/Express 服务器中断路由,但路由器未定义

break routes out of Node/Express server, but router is undefined

我正在尝试将路由从我的节点服务器中分离出来,因为它变得有点混乱。我按照我在教程服务器中看到的模式制作了一个文件 routes/routes.js,它看起来像这样:

var router = require('express').Router()
// routes in here
module.exports = router

我将这一行添加到我的服务器

app.use(require('./routes/routes'))

但是我的服务器无法启动并给出错误

router.get('/', function (req, res, next)) Cannot call method 'get' of undefined

我查看了 express 文档(版本 3.16.3),但我无法弄清楚为什么路由器未定义且无法调用 'get'

我通常有一个路由配置,我只是需要它。

// config/routes.js

module.exports = function (app) {

    app.get('/', get.stuff);
    app.post('/api/:id', create.stuff);

}

现在在我们的服务器中,我们只需要 routes.js 文件,然后将 app 发送给它

// server.js

var app = express(),
    server = http.createServer(app).listen(app.get('port'), function() {});

require('./config/routes.js')(app);