Warum reagiert meine App nicht mehr auf Löschen von Befehlen?Android

Forum für diejenigen, die für Android programmieren
Guest
 Warum reagiert meine App nicht mehr auf Löschen von Befehlen?

Post by Guest »

Ich habe eine SQLite-Datenbank für eine native Android Expo React-App unter Verwendung von Expo-SQLite 13.2.2. Wenn ich alle Daten aus der Datenbank lösche, hängt das Ganze. Ich habe Konsolen.log -Aussagen zu meinen Erfolgs- und Misserfolgs -Rückrufen, aber auch nicht ausgeführt. Protokollanweisungen bestätigen, dass keine andere Funktion nach dem Löschen von . Durch das Löschen einer Tabelle, in der keine Fremdschlüsse enthalten sind, wird das gleiche Ergebnis erzielt. In Table_Names Enum sind 7 Tabellen enthalten. Promise.All Auflösungen, obwohl mein Code die Konsole.log vor den Auflösungsanweisungen nie ausführt.

Code: Select all

export function clearAllData() {
const promiseArray : Promise[] = [];

// avoid foreign key constraint failures
const tableNamesReverse = [...Object.values(TABLE_NAMES)].reverse();

for (const tableName of tableNamesReverse) {
promiseArray.push(
new Promise((resolve, reject) => {
database.transaction((tx) => {
console.log(`DELETE FROM ${tableName}`)
tx.executeSql(
`DELETE FROM ${tableName}`,
[],
(_, result) => {
console.log(`Deleted table ${tableName}`)
resolve();
},
(_, err) => {
console.log(err);
reject();
return true;
}
);
});
})
)
}
return Promise.all(promiseArray);
}
< /code>
Meine Konsole: < /p>
 LOG  clearing all data!  // This is from the line that calls the above method
LOG  DELETE FROM migrations
< /code>
Vereinfachung, nur ein Versprechen zu wartenexport async function clearAllData() {
await new Promise((resolve, reject) => {
database.transaction((tx) => {
tx.executeSql(
`DELETE FROM ${TABLE_NAMES.Migrations}`,
[],
(_, result) => {
console.log(`Deleted table ${TABLE_NAMES.Migrations}`)
resolve();
},
(_, err) => {
console.log(err);
reject();
return true;
}
);
});
});
return;
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post