Node.js NodeJS-如何在任何文件中使用express实例作为singleton(?)

Node.js NodeJS-如何在任何文件中使用express实例作为singleton(?),node.js,express,mongoose,Node.js,Express,Mongoose,项目结构 app.js lib model User.js Product.js routes ..... 我要执行 app.param('PARAMNAME'); 在每个模型中,文件都是静默的。 但我无法访问模型文件中的express js实例 如果没有像“init(app)”这样的方法,我怎么能做到这一点呢?一种方法是通过您的控制器。您可以访问控制器(路由)中请求对象中的app对象。您可以从控制器将app对象或特定值app.param('

项目结构

app.js
lib
    model
        User.js
        Product.js
routes
    .....

我要执行

app.param('PARAMNAME');
在每个模型中,文件都是静默的。 但我无法访问模型文件中的express js实例


如果没有像“init(app)”这样的方法,我怎么能做到这一点呢?

一种方法是通过您的控制器。您可以访问控制器(路由)中请求对象中的
app
对象。您可以从控制器将
app
对象或特定值
app.param('PARAMNAME')
传递给您的模型。使用这种方法,您的代码将大致如下所示:

在你的app.js中

app.get('/someurl', someController.someMethod);
在someController.js中

exports.someMethod = function(req, res) {
    // you have access to the "app" object here
    var paramName = req.app.param('PARAMNAME');
    // pass the value to your model
    yourModel.someMethod(paramName);
    // the rest of your controller code
}