Vue+iView通过a标签导出文件

老子叫甜甜 提交于 2020-12-20 09:07:24

Vue+iView通过a标签绑定事件导出文件

 

使用a标签绑定事件:
<a @click.prevent="downloadItem(downUrl)" :href="downUrl" >下载模板</a>

 

定义下载方法会使用到axios:
import Axios from 'axios'

methods: {
  downloadItem (url) {
    Axios.get(url, { responseType: 'blob' })
      .then(({ data }) => {
        // 为了简单起见这里blob的mime类型 固定写死了
        let blob = new Blob([data], { type: 'application/vnd.ms-excel' })
        let link = document.createElement('a')
        link.href = window.URL.createObjectURL(blob)
        link.download = url.split('/').pop()
        link.click()
      .catch(error => {
        console.error(error)
      })
    })
  }
}

Vue+iView通过a标签属性导出文件

a标签绑定属性
<a href="url" download="filename">下载</a>

 url是你的路径,如果不写或者写成# 会下载当前页面的HTML代码

 filename是下载之后文件的名字。所以不写也可以,不写会按照路径里的那个文件名来。

 

  

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!