0
這是我app.js共享app.js和路線之間的對象ŸNode.js的
var express = require('express');
...
var model = require('./models/my_model');
var routes = require('./routes/index');
var app = express();
app.use('/', routes);
var middlewareBefore = function(req, res, next){
my_model.getName(function(err, result){
if(err){
console.log(err);
res.redirect('/error');
}else{
console.log(result);
next();
}
})
}
app.use(middlewareBefore);
...
module.exports = app;
,這是我的路線/ index.js文件
var express = require('express');
var router = express.Router();
router.get('/', function(req, res, next) {
res.render('login', { url: my_model.getUrl() });
});
module.exports = router();
我想從路由文件訪問my_model。我已經嘗試過使用app.locals,res,req,res.locals和app.use('/',routes)(my_model),正如在本頁面的不同問題上看到的,但它們都不起作用。我不知道如果express.Router()的用法是創建這個問題(注意,該航線前設置中間件並沒有解決這個問題)
1.正如我在問題中所說的那樣,這不起作用,2.這就是我實際上在做的事情,但我想知道這是否會像創建一個新實例一樣(所以如果我需要以前在應用程序中完成的操作,使索引中的另一個需求不會像調用不同的對象?)。請解釋一下 – amlibtest