我的app.js文件看起来像这样:
app = express();
setup.configure(app);
//...more stuff (e.g. database setup, middleware definition, etc.)...
var api = require('./routes/api');
app.use('/api', api);
module.exports = app;
在 routes/api.js 文件中,我使用类似以下这样的中间件来设置路由:router.get('/myroute',
app.sessionMW,
function (req, res, next) {
//...
});
JSLint报错是因为我将app
变量声明为全局的。如果我使用var
进行声明,在路由中会出现undefined
的错误。如果我在路由文件中使用var app = require('../app')
来引用应用程序,我会得到以下错误:
Error: Route.get()要求回调函数但却得到了一个[object Undefined]。
我想通过下面的方式正确定义这个应用:
var app = express();
但是我该怎样在路由文件中访问这个应用程序?