seg*_*ter 5 mongodb commonjs node.js
我是 Node 和 Mongo 的新手,我试图在一个文件中连接到 mongo 数据库并将数据库处理程序导出到许多其他文件,这样我就不需要在需要连接的所有文件中连接到数据库。这是我尝试这样做的方法
// db.js
var client = require('mongodb').MongoClient
var assert = require('assert')
var url = 'mongodb://localhost:27017/test'
client.connect(url, (err, db) => {
assert.equal(err, null)
module.exports = db
})
Run Code Online (Sandbox Code Playgroud)
导出 db 处理程序后,我尝试在另一个文件中访问它的方法,如下所示
var db = require('./db')
console.log(db.collection('col'))
Run Code Online (Sandbox Code Playgroud)
但它抛出一个 TypeError,说这db.collection不是一个函数。如何访问其他文件中 db 处理程序的方法?
最好的选择可能是仅导出带有回调的 init() 函数,然后在使用其他数据库方法之前调用该函数。否则,您可以尝试检查它是否在每个数据库访问方法的顶部初始化,但这实际上可能不是一个更易于维护的解决方案,因为它使它变得更加复杂。
| 归档时间: |
|
| 查看次数: |
4843 次 |
| 最近记录: |