| | |
| | | |
| | | <script> |
| | | import { globalHeaders } from '@/utils/request'; |
| | | import {getToken} from "@/utils/auth"; |
| | | |
| | | export default { |
| | | name: 'FileDialog', |
| | |
| | | } |
| | | }, |
| | | handleDownloadFile() { |
| | | const self = this; |
| | | // fetch(`${process.env.VITE_APP_BASE_API}/project/export/template`, { |
| | | // fetch(`${process.env.VITE_APP_BASE_API}/project/info/export/template`, { |
| | | // method: 'GET', |
| | | // headers: self.upload.headers |
| | | // }) |
| | |
| | | // .catch(error => { |
| | | // console.error('文件下载失败:', error); |
| | | // }); |
| | | |
| | | const url = process.env.VUE_APP_BASE_API + '/project/info/export/template'; |
| | | axios.post(url, [], { // 发送一个空数组而不是空对象 |
| | | responseType: 'blob', // 告诉axios期望服务器返回的是blob类型 |
| | | headers: { |
| | | 'Content-Type': 'application/json', |
| | | Authorization: "Bearer " + getToken() |
| | | } |
| | | }) |
| | | .then(response => { |
| | | // 处理文件下载 |
| | | const blob = new Blob([response.data], { type: 'application/zip' }); // 指定MIME类型为zip |
| | | const url = window.URL.createObjectURL(blob); |
| | | const a = document.createElement('a'); |
| | | a.style.display = 'none'; |
| | | a.href = url; |
| | | a.download = `项目文件模板_${new Date().getTime()}.zip`; |
| | | document.body.appendChild(a); |
| | | a.click(); |
| | | document.body.removeChild(a); |
| | | window.URL.revokeObjectURL(url); |
| | | }) |
| | | .catch(error => { |
| | | console.error('There was an error!', error); |
| | | }); |
| | | }, |
| | | submitFileForm() { |
| | | if (this.uploadRef) { |