Estou usando a biblioteca mysql2 para conectar ao banco de dados.
const pool = mysql.createPool({
connectionLimit: process.env.DB_CONNECTION_LIMIT,
host: process.env.DB_HOST,
user: process.env.DB_USER,
password: process.env.DB_PASSWORD,
database: process.env.DB_DATABASE,
port: process.env.DB_PORT,
});
const promisePool = pool.promise();
ao executar o código acima, estou recebendo TypeError: pool.promise is not a function, embora esta função seja mencionada nos documentos: https://sidorares.github.io/node-mysql2/docs
além disso, quero entender a necessidade/definição desta função, pois ainda sou capaz de executar consultas mesmo se remover esta linha.const promisePool = pool.promise();
// working fine
const [results, fields] = await pool.execute(query, [parameter1]);
Você não precisa usar a função '.promise()'. Ele é exposto apenas para "atualizar" uma conexão não-promessa existente para usar a promessa. conforme a documentação . MySQL2 já usa promessas por padrão. Consulte os exemplos encontrados aqui para saber a melhor maneira de começar a usar MySQL2 e Typescript.