小编use*_*647的帖子

Node Express MongoDB Native驱动程序 - 在哪里打开数据库连接?

我想在app.js文件中通过Node-Mongo-Native-Driver打开并初始化数据库,然后将其打开并读取路由.我在app.js中放入以下代码并包装app.gets,以便在打开数据库时使它们可用:

var mongoClient = new MongoClient(new Server('localhost', 27017));
mongoClient.open(function(err, mongoClient) {
  var db1 = mongoClient.db("dev-db")
    , products = db1.collection('products');
  app.get('/', routes.index);
  app.get('/users', user.list);
});
Run Code Online (Sandbox Code Playgroud)

当我现在尝试读取index.js路由中的数据库时,我得到了

ReferenceError: products is not defined
Run Code Online (Sandbox Code Playgroud)

我认为index.js应该能够访问产品,因为它是在外部函数中定义的,因为在初始化中包装app.gets.

除了第二个问题:MongoClient.open和MongoClient.connect之间有什么区别

variables mongodb node.js express

6
推荐指数
1
解决办法
2393
查看次数

标签 统计

express ×1

mongodb ×1

node.js ×1

variables ×1