From bf4d8ce7a6492cce6ad4c6c89481ca90901e56db Mon Sep 17 00:00:00 2001 From: feng <1304903146@qq.com> Date: Tue, 16 Jul 2024 12:34:18 +0800 Subject: [PATCH] perf: Downloading files does not trigger the beforeunload event --- .../Table/ListTable/TableAction/ExportDialog.vue | 6 ++---- .../Table/ListTable/TableAction/ImportDialog.vue | 7 ++----- src/utils/common.js | 8 +++++++- src/views/sessions/CommandList/BaseList.vue | 6 ++---- 4 files changed, 13 insertions(+), 14 deletions(-) diff --git a/src/components/Table/ListTable/TableAction/ExportDialog.vue b/src/components/Table/ListTable/TableAction/ExportDialog.vue index da1a1abb5..816cbd7ca 100644 --- a/src/components/Table/ListTable/TableAction/ExportDialog.vue +++ b/src/components/Table/ListTable/TableAction/ExportDialog.vue @@ -49,6 +49,7 @@ import Dialog from '@/components/Dialog/index.vue' import { createSourceIdCache } from '@/api/common' import * as queryUtil from '@/components/Table/DataTable/compenents/el-data-table/utils/query' +import { download } from '@/utils/common' export default { name: 'ExportDialog', @@ -201,10 +202,7 @@ export default { }) }, downloadCsv(url) { - const a = document.createElement('a') - a.href = url - a.click() - window.URL.revokeObjectURL(url) + download(url) }, async defaultPerformExport(selectRows, exportOption, q, exportTypeOption) { const url = (process.env.VUE_APP_ENV === 'production') ? (`${this.url}`) : (`${process.env.VUE_APP_BASE_API}${this.url}`) diff --git a/src/components/Table/ListTable/TableAction/ImportDialog.vue b/src/components/Table/ListTable/TableAction/ImportDialog.vue index a6bb09e60..ea4939ef5 100644 --- a/src/components/Table/ListTable/TableAction/ImportDialog.vue +++ b/src/components/Table/ListTable/TableAction/ImportDialog.vue @@ -68,7 +68,7 @@