fix: Excel数据源替换数据,文件较大时加载时间长,且没有加载图标,体验不佳

This commit is contained in:
dataeaseShu 2024-01-11 11:36:59 +08:00
parent 60e9d88ba9
commit f125dec4ba

View File

@ -638,16 +638,26 @@ const onChange = file => {
fileList = file fileList = file
} }
const replaceLoading = ref(false)
const addLoading = ref(false)
const uploadExcel = editType => { const uploadExcel = editType => {
const formData = new FormData() const formData = new FormData()
formData.append('file', fileList.raw) formData.append('file', fileList.raw)
formData.append('type', '') formData.append('type', '')
formData.append('editType', editType) formData.append('editType', editType)
formData.append('id', (nodeInfo.id || 0) as string) formData.append('id', (nodeInfo.id || 0) as string)
return uploadFile(formData).then(res => { replaceLoading.value = editType === 0
nodeInfo.editType = editType addLoading.value = editType === 1
datasourceEditor.value.init(nodeInfo, nodeInfo.id, res) return uploadFile(formData)
}) .then(res => {
nodeInfo.editType = editType
datasourceEditor.value.init(nodeInfo, nodeInfo.id, res)
})
.finally(() => {
replaceLoading.value = false
addLoading.value = false
})
} }
const activeName = ref('table') const activeName = ref('table')
const defaultProps = { const defaultProps = {
@ -839,7 +849,7 @@ const getMenuList = (val: boolean) => {
name="file" name="file"
> >
<template #trigger> <template #trigger>
<el-button class="replace-excel" type="primary"> <el-button v-loading="replaceLoading" class="replace-excel" type="primary">
<template #icon> <template #icon>
<Icon name="icon_edit_outlined"></Icon> <Icon name="icon_edit_outlined"></Icon>
</template> </template>
@ -860,7 +870,7 @@ const getMenuList = (val: boolean) => {
name="file" name="file"
> >
<template #trigger> <template #trigger>
<el-button type="primary"> <el-button v-loading="addLoading" type="primary">
<template #icon> <template #icon>
<Icon name="icon_new-item_outlined"></Icon> <Icon name="icon_new-item_outlined"></Icon>
</template> </template>