我正在尝试在 Node JS 上使用 ArangoJS 驱动器,当我将以下代码添加到主 app.js 文件时,它可以工作,但是当添加到不同文件中的类中的函数时,它会抛出错误。
Database is not defined
代码如下
class User {
insertUser() {
Database = require('arangojs').Database;
db = new Database();
db.useBasicAuth("", "");
db.useDatabase('_system');
collection = db.collection('Users');
doc = {
_key: 'firstDocument',
a: 'foo',
b: 'bar',
c: Date()
};
collection.save(doc).then(
meta => console.log('Document saved:', meta._rev),
err => console.error('Failed to save document:', err)
);
}
contructor() {
}
}
module.exports = User;
如果我直接使用 app.js 中 insertUser 函数的代码,它就可以正常工作。
请多多指教
谢谢
注意:我将 Express 与 Node js 一起使用
最佳答案
您需要在类之外请求数据库并使用 const:
const { Database } = require('arangojs');
class User {
contructor() {}
insertUser() {
db = new Database();
db.useBasicAuth("", "");
db.useDatabase('_system');
collection = db.collection('Users');
doc = {
_key: 'firstDocument',
a: 'foo',
b: 'bar',
c: Date()
};
collection.save(doc).then(
meta => console.log('Document saved:', meta._rev),
err => console.error('Failed to save document:', err)
);
}
}
module.exports = User;
关于javascript - Node js 上的 arangojs 中未定义数据库引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58624771/