从 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);
我正在尝试将路由从我的节点服务器中分离出来,因为它变得有点混乱。我按照我在教程服务器中看到的模式制作了一个文件 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);