连接到mongodb模块 - NodeJS

时间:2016-05-22 00:24:50

标签: javascript node.js mongodb ecmascript-6

我是一个使用Node JS和MongoDB的新手,通过互联网查看我来制作这个模块以获得与mongo的连接。我的问题是

  • 可以吗?
  • 如何改进
  • 有没有办法用发电机ES6做到这一点?

这是我的代码:

"use strict"
var MongoClient = require('mongodb').MongoClient;

var config = {
    host: 'localhost',
    port: 27017,
    db: 't1'
};

var mdb = null,
    uri = `mongodb://${config.host}:${config.port}/${config.db}`;

module.exports = {

    connect: () => {

        return new Promise((resolve, reject) => {

            MongoClient.connect(uri, (err, db) => {
                if(err) {
                    return reject(err);
                } else {
                    mdb = db;
                    return resolve();
                }
            });

        });
    },

    get: () => {
        return mdb;
    }
};

2 个答案:

答案 0 :(得分:3)

您应该广泛使用ODM进行数据库连接。您可以选择非常有用的mongoose,并提供许多功能,如中间件,架构设计,类型转换,验证器。此模块由Linkedin,Datafox等网站使用 由于Mongo是一个非结构化数据库,它将帮助您设计数据库并添加约束。

答案 1 :(得分:0)

您可能需要在承诺mdb回调中使用resolve var,但我认为最好的方法是使用Mongoose的Mongoose ODM。