在Express docs,它说:在Express中路由时,应用层和路由器级中间件有何区别?
应用级中间件必将Express实例,使用app.use()和app.VERB()。
路由器级中间件与应用级中间件一样工作,除非它们绑定到
express.Router()
的实例。上例中在应用程序级别创建的中间件系统可以使用以下代码在路由器级别进行复制。
在由快速生成提供的应用程序,我在主app.js
看到,有:
var routes = require('./routes/index');
app.use('/', routes);
而在./routes/index.js
,我看到:
var express = require('express');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
module.exports = router;
什么app.use
的目的是将它传递给router.get
而不是简单地使用app.get
?一般来说,在路由方面,app.VERB
和router.VERB
之间有什么区别?
所以'express.Router()'和'应用=快递()'将是相同的对象? – 2018-01-24 14:39:24