получить ответ от expo sqlite запроса - PullRequest
0 голосов
/ 22 мая 2019

Согласно документации Expo с SQLite, я бы сделал запрос следующим образом:

tx.executeSql(sqlStatement, arguments, success, error)

Я выполняю его так:

db.transaction(tx => {
  tx.executeSql('SELECT * FROM dr_report_properties WHERE orderId = (?)', [this.state.orderId]);
},
  error => {
    alert(error);
  },
  (tx, results) => {
    console.log(results);
  }
);

Мой вопрос: как мне получить ответ??Выше возвращается как неопределенное.Затем я пытаюсь (не ожидая, что это сработает, но только для ударов)

console.log(tx);

Это дает console.log

(tx, results) => {
        console.log('I got data');
      }
    )

В соответствии с документацией:

ResultSet objects are returned through second parameter of the success callback for the tx.executeSql() method on a Transaction (see above). They have the following form:
{
  insertId,
  rowsAffected,
  rows: {
    length,
    item(),
    _array,
  },
}

Я ожидаю, что результатом будет этот объект.Есть идеи, что я делаю не так?

1 Ответ

0 голосов
/ 24 мая 2019

Проблема с вышеупомянутым состояла в том, что я поместил вызов ПОСЛЕ выполнения, он фактически в том же методе, что и.

Результат должен был поступить в обратном вызове так:

db.transaction(
      tx => {
        tx.executeSql('select * from my_table', [], (trans, result) => {
          console.log(trans, result)
        });
      }
    );

Спасибо @charliecruzan из выставочной команды!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...