簡體   English   中英

sqlite 值未分配給變量

[英]sqlite value not assigning to variable

我目前正在使用 React 本機移動應用程序,在此過程中,我使用 SQLite 在手機中本地存儲數據,問題是我分配了一個變量getToken ,該變量需要由我存儲在 SQLite DB 中的令牌填充。 下面是我嘗試過的方法,它總是返回默認值。

function getTest() {
  let getToken = 'ABC';
  db.transaction(tx => {
    tx.executeSql('SELECT * FROM Login', [], (tx, result) => {
     getToken = result.rows.item(0).access_token;
    });
  });

  return getToken;
}

出現問題是因為 transaction 和 executeSQL 是異步方法。 嘗試使用 await 或在 executeSQL 回調中解析 promise。 我解決了這個問題如下

async function returnToken() {
  return new Promise((resolve, reject) => {
    db.transaction(tx => {
      tx.executeSql('SELECT * FROM Login', [], (tx, result) => {
        let accessToken = result.rows.item(0).access_token;
        resolve(accessToken);
      });
    });
  });
}

async function (config){
    let token = await returnToken();
    console.log('token', token);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM