Browse Source

Fix stale data overwriting new data when requests are slow

pull/4023/head
Andrew Kingston 5 years ago
parent
commit
b612c32ce5
  1. 11
      packages/builder/src/components/backend/DataTable/DataTable.svelte

11
packages/builder/src/components/backend/DataTable/DataTable.svelte

@ -29,9 +29,18 @@
$: {
if ($views.selected?.name?.startsWith("all_")) {
loading = true
const loadingTableId = $tables.selected?._id
api.fetchDataForView($views.selected).then(rows => {
data = rows || []
loading = false
// If we started a slow request then quickly change table, sometimes
// the old data overwrites the new data.
// This check ensures that we don't do that.
if (loadingTableId !== $tables.selected?._id) {
return
}
data = rows || []
})
}
}

Loading…
Cancel
Save