当前位置: 代码迷 >> 综合 >> vue 二进制文件的下载
  详细解决方案

vue 二进制文件的下载

热度:21   发布时间:2024-02-13 18:28:29.0

blob

downFilebinary(ajaxUrl, name, methodType) {

      delete axios.defaults.headers['api-version']

      axios({

        method: methodType,

        url: ajaxUrl,

        responseType: 'blob'

      }).then(res => {

        let blob = new Blob([res], { type: 'application/vnd.ms-excel' }) // 这里表示xmlx类型

        let downloadElement = document.createElement('a')

        let href = window.URL.createObjectURL(blob) // 创建下载的链接

        downloadElement.href = href

        downloadElement.download = name // 下载后文件名

        document.body.appendChild(downloadElement)

        downloadElement.click() // 点击下载

        document.body.removeChild(downloadElement) // 下载完成移除元素

        window.URL.revokeObjectURL(href) // 释放掉blob对象

      }).catch((error) => { })

    }

 

// 友情 提示

 切记 不要 与 mock.js 同时使用  会导致  responseType: 'blob' 无效  下载下来的文件 无法打开

  相关解决方案