2
我想包含一个.db
数据库文件,用于在我的node.js项目中使用sqlite3。当打开数据库连接的模块被不同目录中的文件需要时,我的问题就出现了。用node.js处理相对路径
我的项目结构如下所示:
project/
|--lib/
| |--foo.js
| `--bar.js
|--db/
| `--database.db
`--server.js
我foo.js
文件包含打开数据库,像这样:
var sqlite3 = require('sqlite3');
var db = new sqlite3.Database('db/database.db');
module.exports = {
foo: function() {
db.serialize(function() { /* Do database things */ });
}
};
当从server.js
文件等所需foo.js
这一切工作正常所以:
var foo = require('./lib/foo');
但是,如果需要,lib
目录中的文件bar.js
不起作用。
var foo = require('./foo');
我想这是因为当这个文件是从lib
目录开始,则.db
文件实际上应该是../db/database.db
。
我该如何解决这个问题,我该怎么做?