Express:如何在node js express中要求一个文件并将参数值传递给它?
Express: How to require a file in node js express and pass a parameter value to it?
这个问题与如何在node.js中require一个文件并在request方法中传递一个参数,但不传递给模块有很大关系?
-- 问题.
我有一个节点 js Express 应用程序。当访问者访问http://localhost/getPosts时,主节点js文件需要./routes/posts文件并发送数据库连接到需要的文件。
app.use('/getPosts', require('./routes/posts')(myDatabase));
./routes/posts 文件的内容如下:
var express = require('express');
var router = express.Router();
//Do something with myDatabase here
router.get('/', (req, res, next) => {
res.render('index');
});
module.exports = router;
我的网站有多个页面,即多个页面需要连接数据库。但是不可能使用同一个客户端(Node JS 服务器)与同一个数据库建立多个连接。这就是为什么我尝试在主页中添加连接代码。
如何在代码的注释区域获取 myDatabase 变量?
您应该导出 returns 路由器的功能,例如:
module.exports = dbConnection => {
var express = require('express');
var router = express.Router();
router.get('/', (req, res, next) => {
res.render('index');
});
return router;
};
这个问题与如何在node.js中require一个文件并在request方法中传递一个参数,但不传递给模块有很大关系? -- 问题.
我有一个节点 js Express 应用程序。当访问者访问http://localhost/getPosts时,主节点js文件需要./routes/posts文件并发送数据库连接到需要的文件。
app.use('/getPosts', require('./routes/posts')(myDatabase));
./routes/posts 文件的内容如下:
var express = require('express');
var router = express.Router();
//Do something with myDatabase here
router.get('/', (req, res, next) => {
res.render('index');
});
module.exports = router;
我的网站有多个页面,即多个页面需要连接数据库。但是不可能使用同一个客户端(Node JS 服务器)与同一个数据库建立多个连接。这就是为什么我尝试在主页中添加连接代码。 如何在代码的注释区域获取 myDatabase 变量?
您应该导出 returns 路由器的功能,例如:
module.exports = dbConnection => {
var express = require('express');
var router = express.Router();
router.get('/', (req, res, next) => {
res.render('index');
});
return router;
};