mirror of
https://github.com/dataease/dataease.git
synced 2026-05-15 05:22:13 +08:00
fix: 修复应用导出空白问题 (#17530)
This commit is contained in:
@@ -6,7 +6,6 @@ import { storeToRefs } from 'pinia'
|
||||
import { findResourceAsBase64 } from '@/api/staticResource'
|
||||
import FileSaver from 'file-saver'
|
||||
import { deepCopy } from '@/utils/utils'
|
||||
import { toPng } from 'html-to-image'
|
||||
import { domToPng } from 'modern-screenshot'
|
||||
const embeddedStore = useEmbedded()
|
||||
const dvMainStore = dvMainStoreWithOut()
|
||||
@@ -36,15 +35,7 @@ export function imgUrlTrans(url) {
|
||||
}
|
||||
}
|
||||
|
||||
export function download2AppTemplate(
|
||||
downloadType,
|
||||
canvasDom,
|
||||
name,
|
||||
attachParams,
|
||||
componentDataSource = componentData.value,
|
||||
canvasStyleDataSource = canvasStyleData.value,
|
||||
callBack?
|
||||
) {
|
||||
export function download2AppTemplate(downloadType, canvasDom, name, attachParams, callBack?) {
|
||||
try {
|
||||
findStaticSource(function (staticResource) {
|
||||
html2canvas(canvasDom).then(canvas => {
|
||||
@@ -61,8 +52,8 @@ export function download2AppTemplate(
|
||||
dvType: dvInfo.value.type,
|
||||
nodeType: downloadType,
|
||||
version: 3,
|
||||
canvasStyleData: JSON.stringify(canvasStyleDataSource),
|
||||
componentData: JSON.stringify(componentDataSource),
|
||||
canvasStyleData: JSON.stringify(canvasStyleData.value),
|
||||
componentData: JSON.stringify(componentData.value),
|
||||
dynamicData: JSON.stringify(canvasViewDataTemplate),
|
||||
staticResource: JSON.stringify(staticResource || {}),
|
||||
appData: attachParams ? JSON.stringify(attachParams) : null
|
||||
|
||||
@@ -191,7 +191,7 @@ const fileDownload = (downloadType, attachParams) => {
|
||||
downloadStatus.value = true
|
||||
nextTick(() => {
|
||||
const vueDom = previewCanvasContainer.value.querySelector('.canvas-container')
|
||||
download2AppTemplate(downloadType, vueDom, state.dvInfo.name, attachParams, null, null, () => {
|
||||
download2AppTemplate(downloadType, vueDom, state.dvInfo.name, attachParams, () => {
|
||||
downloadStatus.value = false
|
||||
const param = {
|
||||
id: state.dvInfo.id,
|
||||
|
||||
@@ -139,22 +139,14 @@ const fileDownload = (downloadType, attachParams) => {
|
||||
downloadStatus.value = true
|
||||
nextTick(() => {
|
||||
const vueDom = previewCanvasContainer.value.querySelector('.canvas-container')
|
||||
download2AppTemplate(
|
||||
downloadType,
|
||||
vueDom,
|
||||
state.dvInfo.name,
|
||||
attachParams,
|
||||
state.canvasDataPreviewSource,
|
||||
state.canvasStylePreviewSource,
|
||||
() => {
|
||||
downloadStatus.value = false
|
||||
const param = {
|
||||
id: state.dvInfo.id,
|
||||
type: state.dvInfo.type === 'dashboard' ? 'panel' : 'screen'
|
||||
}
|
||||
downloadType === 'app' ? exportLogApp(param) : exportLogTemplate(param)
|
||||
download2AppTemplate(downloadType, vueDom, state.dvInfo.name, attachParams, () => {
|
||||
downloadStatus.value = false
|
||||
const param = {
|
||||
id: state.dvInfo.id,
|
||||
type: state.dvInfo.type === 'dashboard' ? 'panel' : 'screen'
|
||||
}
|
||||
)
|
||||
downloadType === 'app' ? exportLogApp(param) : exportLogTemplate(param)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user