node.js / mongodb文件结构

我试图设置这个简单的NodeJS / mongodb应用程序,我有我的文件结构是这样的:

server.js | +-routes/menu.js +-routes/cases.js 

在我的server.js中,我声明了如下所示的mongodbvariables:

 var express = require('express'), mongo = require('mongodb'), Server = mongo.Server, MongoClient = mongo.MongoClient, Db = mongo.Db, http = require('http'), app = express(), httpServer = http.createServer(app), bodyParser = require('body-parser'), server = new Server('host.mongohq.com', 10066, {auto_reconnect : true}), db = new Db('myDb', server); db.open(function(err, client) { client.authenticate('myUser', 'myPassword', function(err, success) { console.log('Authenticated'); }); }); var cases = require('./routes/cases'), menu = require('./routes/menu'); 

但是当我尝试引用我的数据库var在例如menu.js是这样的:

 db.collection(myCollection, function(err, collection) {}); 

我得到一个错误,数据库没有定义。

很明显,我可以把所有的mongodb声明都移到我的menu.js和cases.js文件中,但是这非常优雅。 那么如何创build一个mongodb实例var并从我包含的文件中引用它呢?

提前致谢…

你需要在你的menu.js文件中需要server.js

你的db对象不是全局的。 如果你想要它,没有var声明。