小白求指教app.use使用方法
发布于 10 年前 作者 kinnonzhan 8896 次浏览 最后一次编辑是 8 年前 来自 问答

以下为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();
});
回到顶部