Я хотел бы инкапсулировать команды базы данных SQLite в класс DBManager.Чтобы прочитать данные, я написал следующие строки:
DBManager.prototype.readMyData = function(param1, param2) {
this.db.transaction(function(tx) {
tx.executeSql("SELECT * FROM myTable WHERE param1 <= ?",
[param1],
function(tx, result) {
var myData = [];
for (var i=0; i<result.rows.length; i++) {
var row = result.rows.item(i);
myData.push(row);
}
},
errorHandler);
});
return myData;
}
Проблема: Если я вызываю метод readMyData (), команда return выполняется перед методом транзакции иего внутренний материал.
Как я могу справиться с этим, чтобы возвращаемое значение readMyData()
не было пустым, а содержало массив myData
?