[英]Connecting Node js to Mongo Atlas via Promise
Hey guys i am new to asynchronous programming so i studied well Promises and implemented a little bit but so far now i am facing an issue In order to connect my Mongo Atlas to Node js i found a code which was written as 大家好,我是异步编程的新手,所以我对Promises进行了很好的学习,并实现了一点点,但是到目前为止,我遇到了一个问题。为了将Mongo Atlas连接到Node js,我找到了一个编写为
App.js App.js
const mongoconnect=require('./utils/database')
mongoconnect((client)=>{
console.log(client)
app.listen(3000)
})
utils/database.js utils的/ database.js
const mongodb=require('mongodb');
const Mongoclient=mongodb.MongoClient
const mongoconnect=(callback)=>{
Mongoclient.connect('mongodb+srv://ratnabh2615:ratnabh2614@cluster0-
altfm.mongodb.net/test?retryWrites=true&w=majority')
.then(client=>{
console.log('Connected')
callback(client)
})
.catch(err=>console.log(err))
}
module.exports=mongoconnect
So as you can see in utils/database.js we are using a callback funcion but i want to use only Promise here so i tried to implement myself but failed as i am not so experienced with it.Could you please solve the issue ? 因此,如您在utils / database.js中看到的那样,我们使用的是回调函数,但我只想在此处使用Promise,所以我尝试实现自己,但是由于我没有那么丰富的经验而失败了。能否解决这个问题?
I did something like this, dont know how much wrong it is 我做了这样的事情,不知道有多大错
utils/database.js utils的/ database.js
const mongodb=require('mongodb');
const Mongoclient=mongodb.MongoClient
const mongoconnect=()=>{
return new Promise((resolve,reject)=>{
const url='mongodb+srv://ratnabh2615:ratnabh2614@cluster0-
altfm.mongodb.net/test?retryWrites=true&w=majority';
Mongoclient.connect(url).then(client=>{
console.log('Connected')
return resolve(client)
}).catch(err=>console.log(err))
})
}
module.exports=mongoconnect
App.js App.js
const mongoconnect=require('./utils/database')
mongoconnect.then(results=>{
console.log(results)
app.listen(3000)
}).catch(err=>console.log(err))
But i receive the error 但是我收到错误
mongoconnect.then(results=>{
^
TypeError: mongoconnect.then is not a function
Just call it like a function: 就像函数一样调用它:
const mongoconnect=require('./utils/database');
mongoconnect().then(results=>{
console.log(results);
}).catch(err=>console.log(err));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.