| export function downloadFile(url, data) { |
| axios({ |
| method: 'post', |
| url: Vue.prototype.myUrl + url, |
| headers: { |
| 'x-auth-token': window.localStorage.getItem('token') |
| }, |
| responseType: 'blob', |
| data: data |
| }).then((res) => { |
| if (res.data) { |
| var blob = new Blob([res.data], { |
| type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8' |
| }) |
| var downloadElement = document.createElement('a') |
| var href = window.URL.createObjectURL(blob) |
| downloadElement.href = href |
| downloadElement.download = decodeURI(res.headers.attachment) |
| document.body.appendChild(downloadElement) |
| downloadElement.click() |
| document.body.removeChild(downloadElement) |
| window.URL.revokeObjectURL(href) |
| } |
| }).catch((res) => { |
| Message({ |
| message: res.message, |
| type: 'error', |
| duration: 5 * 1000 |
| }) |
| }) |
| } |