Не получатся проверить email пользователя в БД, точнее проверка проходит а вот на то что есть или нету email в БД не получается rows возвращается а вот что делать дальше не разберусь. Пишу цикл для запроса, Бд зависает. При ответе что есть email нужно не регистрировать пользователя а при отрицательном ответе пользователя нужно зарегистрировать. Node.js Тот код который закомментирован это регистрация пользователя. Благодарен за любую помощь.
Вот мой код:
const db = require('../db')
const bcrypt = require('bcrypt')
//const { json } = require('express')
class userController {
async createUser (req, res) {
try{
const {name, surname, email, pass, pass2} = req.body
db.query('SELECT * FROM users WHERE email = $1', [email] , (err, row) =>{
if(err){
console.log('Error executing query', err.stack);
}
//res.json(row)
let isTrue=false
if(row){
for(let i=0; i < row.length; i++){
if(row[i].email == email){
isTrue = true;
row.json({"message": "C данным email пользователь есть"})
}else{
row.json({"message": " Регистрирую пользователя"})
}
}
}
});
/*if(pass==pass2){
const hashPass = bcrypt.hashSync(pass, 15)
const hashPass2 = bcrypt.hashSync(pass2, 15)
const newPerson = await db.query(`INSERT INTO users(name, surname, email, pass, pass2) values ($1, $2, $3, $4, $5) RETURNING *`, [name, surname, email, hashPass, hashPass2])
res.json(newPerson.rows)
}else{
res.json({"message" : "пароли не совпадают"})
}*/
} catch(e){
console.log(e)
res.send({message: "Server error"})
}
}