Vue文件上传、下载

Vue文件上传、下载代码示例:文件上传到接口,对接口返回的文件进行下载。<template><divclass=”hello”><h1>{{msg}}</h1><inputtype=”file”@change=”uploadFile($event)”accept=”.sql,.excel,.txt”/></div></template><script>exportdefau

大家好,又见面了,我是你们的朋友全栈君。

代码示例:文件上传到接口,对接口返回的文件进行下载。

<template>
  <div class="hello">
    <h1>{
  
  { msg }}</h1>
    <input type="file" @change="uploadFile($event)" accept=".sql,.excel,.txt"/>
  </div>
</template>

<script>
export default {
  name: 'HelloWorld',
  props: {
    msg: String
  },
  methods: {
    uploadFile: function (event) {
      //将接收到的文件以表单形式post到接口
      let file = event.target.files[0];
      let formData = new FormData();
      formData.append('file', file);
      let config = {
        headers: {'Content-Type': 'multipart/form-data'},//文件上传配置
        responseType:'arraybuffer'//文件下载配置
      }
      this.$axios
          .post('/api/action/sql_to_word', formData, config)//进行了跨域代理
          .then((response => {
            //对返回的文件流进行下载
            let url = window.URL.createObjectURL(new Blob([response.data])) //创建下载链接
            let link = document.createElement('a') //创建a标签
            link.style.display = 'none'  //将a标签隐藏
            link.href = url  //给a标签添加下载链接
            link.setAttribute('download', 'abc.docx') // 此处注意,要给a标签添加一个download属性,属性值就是文件名称 否则下载出来的文件是没有属性的,空白白
            document.body.appendChild(link)
            link.click()  //执行a标签
          }))
    }
  }
}
</script>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148649.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VR全景展示渠道

    VR全景能够给人带来一种身临其境的感受,是一种新颖的广告宣传方式。随着5G的推广和普及,VR全景被各行各业广泛应用,就是将线下真实的场景以3D立体的形式展现在互联网上,以此帮助商家起到宣传展示和引流的效果。那么通过什么样的渠道能够进行VR全景的宣传呢?下面介绍一下:1、百度地图百度地图有着五亿用户,从2018年起,百度地图导航开拓实体商家实际全景进行拍摄,打造出城市街景和內部全景图的无缝拼接,建立VR全景图生态体系,考虑顾客的要求,提升商家的广告宣传力度,在百度地图APP上搜索名字,能够查询到商家全

    2022年4月12日
    92
  • 并查集例题_并查集算法

    并查集例题_并查集算法E – 带删除并查集 UVA – 11987 Almost Union-Find

    2022年4月20日
    37
  • ArcGIS二次开发入门(一)「建议收藏」

    ArcGIS二次开发入门(一)「建议收藏」作者:朱金灿来源:http://blog.csdn.net/clever101      公司培训ArcGIS二次开发(C#作为开发语言),自己回家动手实践了一下。 1.首先是二次开发环境的安装,需要装下面两项:

    2022年6月29日
    65
  • 文章序号规范[通俗易懂]

    文章序号规范[通俗易懂]文章的层次顺序应依次是:第一层“一、”<黑体>(作为小标题时句尾无标点);第二层“(一)”<楷体>(作为小标题时句尾标点可有可无);第三层“1.”<仿宋&g

    2022年8月4日
    3
  • 【深度学习入门】——亲手实现图像卷积操作[通俗易懂]

    【深度学习入门】——亲手实现图像卷积操作[通俗易懂]深度学习中有一个很重要的概念就是卷积神经网络CNN,卷积神经网络中又有卷积层、池化层的概念。尤其是卷积层,理解难度比较大,虽然书中或者是视频中都有详细介绍过它的基础概念,但对于求知欲望很强烈的我,我总心里痒痒的,总想亲手实现,看看效果,怕的就是自己会眼高手低,做技术人最可怕的就是眼高手低。所以,我打算用python来亲自验证一遍。什么是卷积?卷积(convolution)是数学知…

    2022年5月8日
    72
  • python图像处理实战_数字图像处理与python实现pdf下载

    python图像处理实战_数字图像处理与python实现pdf下载数学形态学是一门建立在格论和拓扑学基础之上的图像分析学科,是数学形态学图像处理的基本理论。其基本的运算包括:腐蚀和膨胀、开运算和闭运算、图像顶帽运算和图像底帽运算、骨架抽取、形态学梯度、Top-hat变换等。万字长文整理,希望对您有所帮助。该系列文章是讲解PythonOpenCV图像处理知识,前期主要讲解图像入门、OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子、图像增强技术、图像分割等,后期结合深度学习研究图像识别、图像分类应用。希望文章对您有所帮助,如果有不足之处,还请海涵~

    2022年10月14日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号