我正在浏览有关mongoose and NodeJS
的博客在本文中,他们做了两件事,我无法理解
首先,他们写了这样的东西
mongoose.Promise = global.Promise;
[问题:1] ?有人可以帮助我了解这是什么意思吗?
其次,在它的下面,他们做了这样的事情
mongoose.connect(dbConfig.url, {
useNewUrlParser: true
}).then(() => {
console.log("Successfully connected to the database");
}).catch(err => {
console.log('Could not connect to the database. Exiting now...', err);
process.exit();
});
[问题:2] 。这是useNewUrlParser?
答案 0 :(得分:1)
这是两个不相关的问题。
mongoose.Promise
已在this answer中进行了解释。这是Mongoose 5不需要的旧代码。Mongoose使用本机Promise
。
useNewUrlParser
连接应作为经验法则,the reference中对此进行了解释:
基础MongoDB驱动程序已弃用其当前的连接字符串解析器。因为这是一个重大更改,所以他们添加了useNewUrlParser标志,以允许用户在新解析器中发现错误时退回到旧解析器。除非您阻止连接,否则应将useNewUrlParser:true设置为。请注意,如果您指定useNewUrlParser:true,则必须在连接字符串中指定一个端口,例如mongodb:// localhost:27017 / dbname。新的URL解析器不支持没有端口的连接字符串,例如mongodb:// localhost / dbname。