diff --git a/frontend/src/lang/zh.js b/frontend/src/lang/zh.js index 6d2a130a18..d52373d63c 100644 --- a/frontend/src/lang/zh.js +++ b/frontend/src/lang/zh.js @@ -1334,7 +1334,10 @@ export default { new_window: '新窗口', now_window: '当前窗口', hyperLinks: '超链接', - link_open_tips: '仪表板非编辑状态可打开链接' + link_open_tips: '仪表板非编辑状态可打开链接', + data_loading: '数据准备中...', + export_loading: '导出中...', + export_pdf: '导出PDF' }, plugin: { local_install: '本地安装', diff --git a/frontend/src/views/panel/export/PDFPreExport.vue b/frontend/src/views/panel/export/PDFPreExport.vue index af64d5e2bb..3051561bae 100644 --- a/frontend/src/views/panel/export/PDFPreExport.vue +++ b/frontend/src/views/panel/export/PDFPreExport.vue @@ -1,5 +1,11 @@ @@ -36,6 +42,7 @@ export default { }, data() { return { + exportLoading: false, activeName: '', templateContentChange: '', time: '', @@ -82,15 +89,20 @@ export default { }, save() { const _this = this - html2canvas(document.getElementById('exportPdf')).then(function(canvas) { - const contentWidth = canvas.width - const contentHeight = canvas.height - const pageData = canvas.toDataURL('image/jpeg', 1.0) - const PDF = new JsPDF('l', 'px', [contentWidth, contentHeight]) - PDF.addImage(pageData, 'JPEG', 0, 0, contentWidth, contentHeight) - PDF.save(_this.panelName + '.pdf') - } - ) + _this.exportLoading = true + setTimeout(() => { + html2canvas(document.getElementById('exportPdf')).then(function(canvas) { + _this.exportLoading = false + const contentWidth = canvas.width + const contentHeight = canvas.height + const pageData = canvas.toDataURL('image/jpeg', 1.0) + const PDF = new JsPDF('l', 'px', [contentWidth, contentHeight]) + PDF.addImage(pageData, 'JPEG', 0, 0, contentWidth, contentHeight) + PDF.save(_this.panelName + '.pdf') + _this.$emit('closePreExport') + } + ) + }, 50) } } diff --git a/frontend/src/views/panel/list/PanelViewShow.vue b/frontend/src/views/panel/list/PanelViewShow.vue index 623cdfd0d7..5f0535aa92 100644 --- a/frontend/src/views/panel/list/PanelViewShow.vue +++ b/frontend/src/views/panel/list/PanelViewShow.vue @@ -1,5 +1,11 @@