Javascript 在express js中从数据库全局访问配置

Javascript 在express js中从数据库全局访问配置,javascript,node.js,mongodb,express,Javascript,Node.js,Mongodb,Express,我正在使用expressjs,出于某种原因,我想在数据库中存储项目配置变量。从数据库中访问配置变量的最佳方法是什么,这样我就不需要在加载的每个路由器上查询数据库了 我应该使用app.locals吗 为此,我不直接导出“路由器”,而是导出一个接受参数的函数,该参数将接收配置。下面是一个例子: // router.js module.exports = function(database) { return { getLogin: function(req, res) { /

我正在使用expressjs,出于某种原因,我想在数据库中存储项目配置变量。从数据库中访问配置变量的最佳方法是什么,这样我就不需要在加载的每个路由器上查询数据库了


我应该使用app.locals吗

为此,我不直接导出“路由器”,而是导出一个接受参数的函数,该参数将接收配置。下面是一个例子:

// router.js
module.exports = function(database) {
  return {
    getLogin: function(req, res) {
      // database exist here
    }
  }
}

// app.js without the creation of app and database
var app = express();
var database = require('./database');

var router = require('./router')(database)
app.get('/login', getLogin);

通过这种方式,您可以轻松地与数据库进行模块化交互。

为此,我不直接导出“路由器”,而是导出一个接受参数的函数,该参数将接收配置。下面是一个例子:

// router.js
module.exports = function(database) {
  return {
    getLogin: function(req, res) {
      // database exist here
    }
  }
}

// app.js without the creation of app and database
var app = express();
var database = require('./database');

var router = require('./router')(database)
app.get('/login', getLogin);

通过这种方式,您可以实现模块化,并且可以轻松地与数据库交互。

您是否考虑创建一个名为
confi.json
的文件,其中包含配置信息并导入
app.js
?此文件可能是配置的数据库。我的配置存储在数据库中。json能够查询数据库吗?如何查询数据库(mongoose、sequelize等)以及可以重新加载哪些配置?您是否考虑创建一个名为
confi.json
的文件,其中包含配置信息并导入
app.js
?此文件可能是配置的数据库。我的配置存储在数据库中。json能够查询数据库吗?如何查询数据库(mongoose、sequelize等)以及可以重新加载哪些配置?感谢@swatto,但这样如果我有20个路由器,我需要在每个文件中添加此功能?感谢@swatto,但这样如果我有20个路由器,我需要在每个文件中添加此功能?