您可以连接一次,然后根据需要重复使用多次:
var mongodb = require('mongodb');var events = require('events');var event = new events.EventEmitter();var access = new mongodb.Server(host, port, { });var client = null;new mongodb.Db('YOUR DATAbase', access, { safe: true, auto_reconnect: true }).open(function (err, c) { if (!err) { client = c; console.log('database connected'); event.emit('connect'); } else { console.log('database connection error', err); event.emit('error'); }});exports.get = function(fn) { if(client) { fn(client); } else { event.on('connect', function() { fn(client); }); }};然后重用它:
var db = require('./db');var items;db.get(function(client) { items = new mongodb.Collection(client, 'collection');});// then anywhere in your predb.get(function() { // items.find({ ...});


