Node + Express.js: 如何将变量传递给路由?
Node + Express.js:how pass variable to a a route?
我是第一次使用 express-generator
所以我有
app.use('/', routes);
我添加了 iniparser
var iniparser = require('iniparser');
var config = iniparser.parseSync('./config.ini');
在 routes/index.js 我试过这个
router.get('/', function(req, res, next, config) {
res.render('index', { title:config.title, message:config.message });
});
但是我得到了
404 Error: Not Found
at app.use.res.render.message (C:\Users\realtebo\Documents\node\auto- express\app.js:36:15)
我做错了什么?
您可以使用路由调用的第二个参数:
router.get('/', config, function(req, res, next, config) {
...
但我认为最好的解决方案是在函数范围内声明变量:
router.get('/', function(req, res, next, config) {
var iniparser = require('iniparser');
var config = iniparser.parseSync('./config.ini');
res.render('index', { title:config.title, message:config.message });
});
最好的方法是在另一个文件中声明您的路由代码
我是第一次使用 express-generator
所以我有
app.use('/', routes);
我添加了 iniparser
var iniparser = require('iniparser');
var config = iniparser.parseSync('./config.ini');
在 routes/index.js 我试过这个
router.get('/', function(req, res, next, config) {
res.render('index', { title:config.title, message:config.message });
});
但是我得到了
404 Error: Not Found
at app.use.res.render.message (C:\Users\realtebo\Documents\node\auto- express\app.js:36:15)
我做错了什么?
您可以使用路由调用的第二个参数:
router.get('/', config, function(req, res, next, config) {
...
但我认为最好的解决方案是在函数范围内声明变量:
router.get('/', function(req, res, next, config) {
var iniparser = require('iniparser');
var config = iniparser.parseSync('./config.ini');
res.render('index', { title:config.title, message:config.message });
});
最好的方法是在另一个文件中声明您的路由代码