React Native expo проверка наличия записи в базе данных
я работаю над React Native приложением для считывания QR кодов. У меня подключена база SQLite, в которую записываются все сканы. Мне необходимо проверить QR на повторное считывание.
if (checkDouble(scan)) { // если позиция еще не сканировалась
// мой код здесь
}else{
// в случае первого сканирования
}
Сама функция checkDouble:
let checkDouble = (scan) => {
db.transaction(
tx => {
tx.executeSql(
'SELECT * FROM `scanned` WHERE `scan` = ?',
[scan],
(_, result) => {
// console.log(result.rows._array)
if (result.rows.length) { // если результат = 1, то уже сканировался
console.log("QR уже сканировался")
return true
}
console.log("QR еще не сканировался")
return false
},
(_, error) => console.log(error)
);
}
);
}
Функция checkDouble возвращает undefined, после чего срабатывает один из console.log(), это означает, что никаких ошибок с базой нет, однако функция не дожидается выполнения и выходит.
Так, если я поставлю console.log() в самом конце функции checkDouble, это действие выполнится раньше обращения к бд
Большое спасибо!