在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