Я создал остальные API, используя Postgres и Express.js, и сейчас пытаюсь очистить свой код. Я использовал систему маршрутизации Express для разделения конечных точек API, однако я больше не могу использовать client.query
, так как клиент объявлен в другом файле.
Вот как выглядит мой код, за исключением информации о соединении и запросов (соединение с базой данных работает, когда я обращаюсь к клиенту в файловом клиенте, объявляемом):
Server.js
const { Client } = require("pg");
module.exports = {
query: (psql) => {
return client.query(psql);
},
}
и вот как я пытаюсь получить доступ к функции:
Route.js
const router = require('express').Router();
const client = require('../../server');
router.get('/', (req, res) => {
client.query(someQuery)
.then((result) => {
res.status(200);
res.send(result.rows);
})
.catch((err) => {
res.sendStatus(400);
console.log(err.stack);
})
})
Я получаю сообщение об ошибке TypeError: client.query is not a function
, хотя автоматическое завершение VSCode показывает его как свойство client
, когда я начинаю вводить его. Любые советы?