我有一个数据库包装器类,用于建立与某些MongoDB实例的连接:
async connect(connectionString: string): Promise<void> {
this.client = await MongoClient.connect(connectionString)
this.db = this.client.db()
}
这给了我一个警告:
(节点:4833)DeprecationWarning:不建议使用当前的URL字符串解析器,并将在以后的版本中将其删除。要使用新的解析器,请将选项{useNewUrlParser:true}传递给MongoClient.connect。
该connect()
方法接受一个MongoClientOptions
实例作为第二个参数。但是它没有名为的属性useNewUrlParser
。我也试图像这样在连接字符串中设置那些属性:mongodb://127.0.0.1/my-db?useNewUrlParser=true
但是它对那些警告没有影响。
那么我该如何设置useNewUrlParser
删除那些警告?这对我很重要,因为脚本应作为cron运行,并且这些警告会导致垃圾邮件垃圾邮件。
我正在使用mongodb
版本中的驱动程序3.1.0-beta4
和中的相应@types/mongodb
软件包3.0.18
。两者都是的最新版本npm install
。
解决方法
使用旧版本的mongodb驱动程序:
"mongodb": "~3.0.8",
"@types/mongodb": "~3.0.18"
beta
周末以某种方式在npm上发布的版本。在API最终确定之前,不必担心。您安装了稳定版本的操作正确。