文件上传

<el-col :span="6" class="btn">

<el-form-item label="合同附件" class="item">

<el-upload ref="upload" class="upload-demo" :headers="upload.headers"

accept=".pdf, .doc, .docx, .xls, .xlsx" :action="upload.url" :on-            success="handleFileSuccess"

:on-error="upError" :before-upload="beforeUpload" :file-list="fileList" multiple>

<el-button size="small" style="margin-left:10px">点击上传</el-button>

</el-upload>

</el-form-item>

</el-col>

//data 里面定义上传头部

data(){

return{

fileList: [],

// 合同文件列表

cceedcAppendixInfoList: [],

upload: {

// 设置上传的请求头部

headers: { Authorization: "Bearer " + getToken() },

// 上传的地址

url: process.env.VUE_APP_BASE_API + "/appendix/fileUpload",

goodsUrl: process.env.VUE_APP_BASE_API + "/contract/goods/read",

isUploading: false,

},

}

}

methods(){

//on-success

handleFileSuccess(response, file, fileList) {

// console.log('response ',response )

if (this.info.form == 'edit') {

bindContract(this.form.id, response.data[0].id).then((response) => { });

} else {

var fileInfo = { "id": response.data[0].id };

this.cceedcAppendixInfoList.push(fileInfo);

}

},

// 文件上传失败

upError(e) {

this.$msg("上传失败", "error");

},

// 文件上传类型 上传大小

beforeUpload(file) {

const fileSuffix = file.name.substring(file.name.lastIndexOf(".") + 1);

const whiteList = ["pdf", "doc", "docx", "xls", "xlsx"];

if (whiteList.indexOf(fileSuffix) === -1) {

this.$msg("上传文件只能是 pdf、doc、docx、xls、xlsx格式", "error");

return false;

}

//  上传大小

// const isLt2M = file.size / 1024 / 1024 < 2;

// if (!isLt2M) {

//   this.$msg("上传文件大小不能超过 2MB", "error");

//   return false;

// }

},

}

展示并点击下载文件

<el-table-column prop="attachment" label="合同附件" width='350'>

<template slot-scope="scope">

<div v-if="scope.row.cceedcAppendixInfoList && scope.row.cceedcAppendixInfoList.length > 0">

<el-button type="text" size="small" v-for="(val, key, i) in  scope.row.cceedcAppendixInfoList" :key="i"

@click.native.prevent="downContractFile(val)">{{ val.appendixOriginalName }}</el-button>

</div>

<div v-else>

<span>暂无</span>

</div>

</template>

</el-table-column>

downContractFile(val) {

request({

//接口

url: '/appendix/downloadFile',

method: 'get',

params: {

"appendixStorageName": val.appendixStorageName,  //展示的名字

"appendixOriginalName": val.appendixOriginalName

},

responseType: 'blob'

}).then((res) => {

var filename = val.appendixOriginalName;

var downloadElement = document.createElement('a');

var href = window.URL.createObjectURL(new Blob([res])); //创建下载的链接   

downloadElement.href = href;

downloadElement.setAttribute("download", filename);

document.body.appendChild(downloadElement);

downloadElement.click(); //点击下载   

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

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

});

},

elment文件上传 展示点击下载相关推荐

  1. 文件上传命令rz和下载命令sz的安装

    一.xshell工具简介 Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议.其可以在Windows界面下用来访 ...

  2. 前端实现文件上传(点击+拖拽)

    一.简介 之前在Vue项目中使用过element的上传组件,实现了点击上传+拖拽上传的两种上传功能.然后我就在想是否可以通过原生的html+js来实现文件的点击上传和拖拽上传,说干就干. 首先是点击获 ...

  3. rz安装 xshell_文件上传命令rz和下载命令sz的安装

    上一节中,我们已经搭建好了linux环境,现在我们开始使用xshell工具,连接虚拟机. 一.xshell工具简介 Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Mic ...

  4. SpringMVC(SSM)框架搭建JavaWeb项目时,前端页面文件上传,后台Java下载功能实现及相关问题记录说明

    看在前面:前端页面通过input控件实现文件上传,后台Java使用SpringMVC框架的实现网上有较多教程,但是真正配置一遍下来不报错的较少,所以本博客前面先介绍一遍完整的设置步骤,然后介绍遇到的一 ...

  5. 文件上传数据库,并下载(包含删除,根据条线查询等功能)

    废话不多说,上代码 一,项目结构如图 二,pom.xml,直接拿去用,有一些依赖是我想添加其他功能用的,反正全都cv没问题 <?xml version="1.0" encod ...

  6. 微信头像下载并上传到阿里云OSS,PHP文件上传到阿里云OSS简单代码(OSS文件上传,微信头像下载,CURL下载文件,微信头像链接过期)

    (就这么个小事,有多少公司多少项目没做到!!) 微信公众号项目,后端获取到授权用户的微信头像后,要自行下载保存,不下载的话,微信返回的头像链接会在一段时间后过期,无法访问! 下面是我写的两个简单实用方 ...

  7. html点击按钮文件上传,js点击按钮实现文件上传

    点击按钮实现文件上传 点击按钮实现文件上传 $('#uploadFileButton').click(function () { $('#upload').click(); }); $('#uploa ...

  8. js文件上传不用点击上传按钮自动上传

    不需要点击上传按钮,选择文件后直接上传: <script> function submitform(){ document.form01.action="upload.php&q ...

  9. CTFshow 文件上传 web167

    目录 思路 总结 思路 根据提示上传了包含shell的jpg文件,上传成功,点击下载文件,发现没有存在文件包含点,访问upload检查是否有可执行文件,提示没有权限,但是发现中间件是apache 可以 ...

最新文章

  1. 九、SpringBoot集成Thymeleaf模板引擎
  2. 自执行匿名函数剖析整理
  3. matlab 函数优化问题,matlab求解最优化问题 Matlab在最优化问题中的应用举例.doc
  4. doxygen工具用法
  5. linux批量重命名脚本,Linux批量命名文件SH脚本整理
  6. 图片自适应div比例缩放上下左右居中
  7. 使用复合数据类型——PL/SQL记录表
  8. iPhone5s 等 64位真机 运行 带有百度地图等 仅支持32位系统API和SDK的问题
  9. atitit.Atitit.检测文本文件的编码 java  与php版  。Net
  10. VS2013 Qt Unable to find a Qt Build 及 LINK1112错误
  11. FPGA(FIR)数字信号处理
  12. php+tcpdf+表格,PHP使用tcpdf类生成PDF文件
  13. apdu 移动sim_SIM卡APDU指令
  14. python3贴吧_python3 百度贴吧 自动签到
  15. 为何汇新云汇聚了如此多的产品经理?
  16. Win10系统下怎么将普通账户设置为管理员账户
  17. HDU 6069 题解
  18. 我的世界java村民繁殖_教程/村民养殖 - Minecraft Wiki,最详细的官方我的世界百科...
  19. 用python做股市数据分析一_用python做股票数据分析(兴趣篇)
  20. JavaEE——JUC

热门文章

  1. 用计算机怎么算二进制数,计算机上的二进制是怎么算的?(计算机中使用二进制来处理和储存所有的数据“逢二进一”。它使用0和1来表示所有的数。例如:1...
  2. PHP对接美团API接口 实现卡卷核销功能
  3. 拼图游戏 玩法介绍及其代码实现(有意思的JS 一)
  4. 《白夜行》《幻夜》读后感
  5. 图解 | 原来这就是网络
  6. 【Linux】修改腾讯云轻量应用服务器的hostname
  7. python基础绘图,教你玩转图表制作
  8. 深度学习,提高前列腺癌诊断正确率
  9. 空洞骑士复活歌女玛丽莎的方法(复活其他灵魂NPC同理)
  10. 【解纠缠表示:图像增强】