35 lines
1.3 KiB
TypeScript
35 lines
1.3 KiB
TypeScript
|
|
import { downloadFile } from '@/api/system-boot/file'
|
||
|
|
// 下载文件
|
||
|
|
export const download = (urls: string) => {
|
||
|
|
downloadFile({ filePath: urls }).then((res: any) => {
|
||
|
|
let blob = new Blob([res], {
|
||
|
|
type: urls.includes('.pdf')
|
||
|
|
? 'application/pdf'
|
||
|
|
: urls.includes('.zip')
|
||
|
|
? 'application/zip'
|
||
|
|
: urls.includes('.doc')
|
||
|
|
? 'application/msword'
|
||
|
|
: urls.includes('.docx')
|
||
|
|
? 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
|
||
|
|
: urls.includes('.xls')
|
||
|
|
? 'application/vnd.ms-excel'
|
||
|
|
: urls.includes('.xlsx')
|
||
|
|
? 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
|
||
|
|
: urls.includes('.png')
|
||
|
|
? 'image/png'
|
||
|
|
: urls.includes('.jpeg')
|
||
|
|
? 'image/jpeg'
|
||
|
|
: urls.includes('.jpg')
|
||
|
|
? 'image/jpg'
|
||
|
|
: ''
|
||
|
|
})
|
||
|
|
const url = window.URL.createObjectURL(blob)
|
||
|
|
const link = document.createElement('a')
|
||
|
|
let name=urls.split('/')[2].split('.')[0]
|
||
|
|
link.href = url
|
||
|
|
link.download = name
|
||
|
|
document.body.appendChild(link)
|
||
|
|
link.click()
|
||
|
|
link.remove()
|
||
|
|
})
|
||
|
|
}
|