小白求指教app.use使用方法
以下为index.js内容
var express = require(‘express’); var router = express.Router(); router.get(’/’, function(req, res, next) { res.send(‘hello, nodejs’); }); module.exports = router;
以下为app.js
(1) var routes = require(’./routes/index’); app.use(’/’, routes);
(2) app.use( ‘/’, function(req, res){ res.send(‘hello, nodejs’); });
app.js 中的(1),(2)效果是一样的
问题: 这两种用法有什么区别? 还有(2)中方法体是写在app.js文件,所以能用app.js里面的申明的变量(或对象)的, 那么(1)中如何使用app.js里面的变量(或对象)呢? 求指教求指教求指教
4 回复
分拆的目的是清晰
@i5ting 那如何调用app.js里面的对象呢,比如我能在(2)中直接用session这个对象, 在分拆(1)的index.js中,如何调用这个app.js里面session呢,通过req.session得到是underfunded
把实例导出: module.exports = app; 就像你这句一样: module.exports = router; 然后再引入的app.js,就可以用app.js里app上的东西了
app.js也是可以require的,另外你可以放到req对象
比如
app.use(function(req, res, next) {
req.server_path = path.join(__dirname, 'public');
return next();
});