我有這樣的代碼在節點:爲什麼nodejs沒有連接mongo?
"use strict"
var MongoClient = require('mongodb').MongoClient;
var UserGateway = function(mongoURL) {
this.mongoURL = mongoURL;
}
UserGateway.prototype.connect = function() {
return new Promise((resolve, reject)=>{
MongoClient.connect(mongoURL, function(err, db) {
if(err) {
reject(err);
}
resolve(db);
});
});
}
UserGateway.prototype.getUsername = function(_userId) {
return new Promise((resolve, reject)=>{
connect().then((db) => {
let user = db.collection('user').findOne({"_id":_userId});
disconnect();
resolve(user);
});
});
}
UserGateway.prototype.disconnect = function() {
return new Promise((resolve, reject) => {
MongoClient.close(function(err, db) {
if(err) {
reject(err)
}
resolve(db)
})
})
}
module.exports = UserGateway;
和我一起執行:
var UserGateway = require("./src/userGateway.js")
var userGT = new UserGateway("mongodb://localhost:27017/UserSports")
userGT.getUsername(1).then(userName => {
console.log(userName)
})
任何人有一個想法,其中的錯誤是什麼?我一直在js編程這麼少。 我的想法是連接到mongo並獲取用戶名的用戶名,並讓getUsername管理連接和斷開連接。
編輯>
我解決了它,它只是我在呼喚一個壞的方式來蒙戈的連接,我用: MongoClient.connect(mongoURL //任何相反MongoClient.connect的 (this.mongoURL // whatever
你能顯示你得到的錯誤嗎?編寫問題的詳細信息以更快獲得幫助,並幫助其他人解決同樣的問題,以便使用您的問題! –
執行代碼沒有收到錯誤,它只是不連接到mongo而什麼都不做:( – Erinel