2017-10-16 14 views
0

nodejsを使用してmongodbに接続しようとしています。私は一度mongodbに接続し、必要な場所でインスタンスを使用したいと考えています。nodejsを使用したMongoClient接続

connection.jsファイルIのようなDB操作を実行するために、他のファイルでMongoClientオブジェクトにアクセスしたい

var MongoClient = require('mongodb').MongoClient, Server = require('mongodb').Server; 
var mongoClient = new MongoClient(new Server('localhost', 27017)); 

module.export = mongoClient; 

router.jsファイル

var mongoClient = require('./connection.js') 
mongoClient.open(function(err, mongoClient) { 
    var db1 = mongoClient.db("mydb"); 
    db1.collection('Persons', function (err, collection) { 

    collection.find().toArray(function(err, items) { 
     if(err) throw err;  
     console.log(items);    
    }); 

    mongoClient.close(); 
    }); 

I次のエラーが発生しています:

MongoDBのに接続するための10
TypeError: mongoClient.open is not a function 

答えて

-1

は、nodejsにあなたが

var MongoClient = require('mongodb').MongoClient, 
 
    async = require('async'), 
 
    datastore = {}; 
 

 
function connect() { 
 
    return new Promise(function(resolve, reject) { 
 
    MongoClient.connect('mongodb://host:port/dbname', function(err, db) { 
 
     if (err) 
 
     return reject(err); 
 
     // Create required collections and set indexes 
 
     async.eachLimit(collections, 1, function(collection, cb) { 
 
     db.collection(collection).createIndex(indexes, function(error) { 
 
      if (error) 
 
      return cb(error); 
 
      return cb(); 
 
     }) 
 
     }, function(error) { 
 
     if (error) { 
 
      console.error('Error creating indexes on Mongodb:', error.message); 
 
      return reject(error); 
 
     } 
 
     // export db 
 
     datastore = db; 
 
     return resolve(datastore); 
 
     }); 
 
    }); 
 
    }); 
 
} 
 

 
connect().then(function(connectionObj) { 
 
    // use connectionObj to do DB operations 
 
}).catch(function(error) { 
 
    console.error(error); 
 
})

ような何かを行うことができますあなたはMongodb Docs

@サンプルを見つけることができます
関連する問題