我正试图打破我的Node服务器的路由,因为它变得有点杂乱。我按照我在教程服务器中看到的模式,制作了一个文件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
我检查了快速文档(版本3.16.3),但我无法弄清楚为什么路由器未定义且无法调用'get'
答案 0 :(得分:2)
我通常有路由配置,我只需要。
// 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);