我正在创建基于Node.js后端应用并使用PostgreSQL数据库。我的目标是在db.js文件中创建数据库连接后,可以在其他文件中重复利用该连接以执行查询。
以下是我的db.js文件:
以下是我的db.js文件:
const pool = new Pool({
user: 'us',
host: 'localhost',
database: 'db',
password: 'pass',
port: 5432,
})
pool.on('connect', () => {
console.log('connected to the Database');
});
module.exports = () => { return pool; }
这是我在 index.js 文件中尝试使用它的方式:
const db = require('./db.js')
app.get('/', (request, response) => {
db().query('SELECT * FROM country'), (error, results) => {
if (error) {
response.send(error)
}
console.log(results)
response.status(201).send(results)
}
})
页面没有错误,但是当我访问这个特定的页面时,它会一直加载,控制台也没有任何显示。
但是,如果我在我的db.js文件中编写一个函数并执行像pool.query(...)
这样的操作,然后导出该函数,在我的index.js中编写app.get('/', exportedFunction)
,那么一切都能正常工作。
有没有办法不把所有的(大约50个)查询都写在同一个(db.js)文件中,因为我想对我的项目进行一些组织?