Извините, после некоторого тщательного изучения того, что казалось вечностью, я пришел к выводу, что функции обратного вызова имеют дополнительный параметр, только когда запрос заключен в транзакцию.
Так что только длязапрос, вы бы сделали это:
db.executeSql(
'SELECT count(*) AS mycount FROM mytable;",
[],
function(resultSet) {
// resultSet.rows.item(0).mycount
},
function(err) {
// err.message
}
);
Но если вы используете транзакционный подход, это будет так:
db.transaction(function(tx) {
db.executeSql(
'SELECT count(*) AS mycount FROM mytable;",
[],
function(tx, resultSet) {
// resultSet.rows.item(0).mycount
},
function(tx, err) {
// err.message
}
);
});
Я не смог найти это объяснилв любой документации или в любых примерах, но когда вы смотрите на любые примеры, где используется транзакция, они всегда имеют дополнительный параметр в функциях обратного вызова, поэтому я просто предполагаю, что это правильное использование.
Есть мысли?