如何在 gridfs-stream 中使用 monk initiated mongoDB instance?

How to use monk initiated mongoDB instance in gridfs-stream?

我正在使用 gridfs-stream。在文档中有一个 mongodb 本机数据库的示例:

// create or use an existing mongodb-native db instance.
var db = new mongo.Db('yourDatabaseName', new mongo.Server("127.0.0.1", 27017))
// make sure the db instance is open before passing into `Grid`
db.open(function (err) {
  if (err) return handleError(err);
  var gfs = Grid(db, mongo);
})

...我正在使用 monk,它也基于 mongodb 本机驱动程序。

不幸的是,我对mongoDB的实现不是很熟悉,所以我不太确定,如果我也可以使用 monk connected db with gridfs-stream:

var db = monk('mongodb://localhost:27017/yourDatabaseName')
var gfs = Grid(db, mongo) // <-- what is mongo in this context?

...通过这次尝试,我不知道从哪里得到 mongo

mongo 在这种情况下只是 mongodb,像这样:

const mongo = require('mongodb'),
      monk = require('monk'),
      monkMgr = monk('mongodb://localhost:27017/yourDatabaseName');

monkMgr.on("open", db => {
    const gfs = Grid(db, mongo);
});

Grid 似乎使用长期弃用的 new mongo.Db( 而不是 MongoClient.connect 而 monk 依赖更新版本的驱动程序。我希望有一些不兼容。请注意风险并投入额外的时间进行测试。