位置: IT常识 - 正文

vue实现文件上传(vue实现文件上传和下载)

编辑:rootadmin
vue实现文件上传

推荐整理分享vue实现文件上传(vue实现文件上传和下载),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue实现文件上传,兼容IE,vue实现文件上传和下载页面,vue文件上传和下载,vue文件上传组件,vue文件上传组件,vue实现文件上传和下载页面,vue文件上传功能,vue实现文件上传,兼容IE,内容如对您有帮助,希望把文章链接给更多的朋友!

这里使用的是vue2,ui用的是element ui ,后期有时间会更新vue3版本的。

前端文件上传使用的是ui框架中的Upload的图片列表缩略图,喜欢别的样式可以直接更改。

看图注

fileChange():方法可以直接获取到上传文件的状态及可以直接拿到图片的值可以新建一个数组直接存储即可

因为文件类型都是以FormData类型存储的,就比如你正常的数组类型就应该是Arr类型一样的,将图片存储到FormData中,若你是多个图片上传直接使用forEach即可。

vue实现文件上传(vue实现文件上传和下载)

axios的使用这里就不做强调了,直接官网看实例就好了。

因为这个demo使用的是前后端分离的方式,所以我这里用的后端是.net6的这里也顺带讲一下吧

先创建一个实体存储文件、路径、扩展名

新建一个逻辑类

public async Task<string> UplodAsync(UpdoadDto updoad){//标记是否有未上传的文件int x = 0;//存储未成功的文件名var fileName = "";string[] arr = new string[updoad.file.Count];//如果当前存储地址不存在则创建if (!Directory.Exists(updoad.savePath)){Directory.CreateDirectory(updoad.savePath);}//如果没有文件直接返回if (updoad.file.Count==0){return "请选择需要上传的文件";}for (int i = 0; i < updoad.file.Count; i++){//获取文件扩展名var filetype = Path.GetExtension(updoad.file[i].FileName);//当前给定的文件扩展名里没有包含上传的文件扩展名if (updoad.filetype.IndexOf(filetype.ToLower())<-1){return "未包含该文件类型,请重新上传";}//判断文件大小var length = updoad.file[i].Length;if (length > Convert.ToInt64(this.configuration["MaxFileSize"])){arr[i] = updoad.file[i].FileName;continue;}x++;//存储文件Hash名,防止文件重复上传var hash = SHA1.Create();//读取文件的请求流var hashBytes = hash.ComputeHash(updoad.file[i].OpenReadStream());var saveName = BitConverter.ToString(hashBytes).Replace("-", "") + filetype;FileInfo fileInfo = new FileInfo(updoad.savePath + saveName);//若文件不存在则开始创建if (!fileInfo.Exists){using FileStream fs = File.Create(updoad.savePath + saveName);updoad.file[i].CopyTo(fs);fs.Flush();}}fileName = string.Join(",", arr);if (x != updoad.file.Count){fileName = fileName.TrimStart(',');fileName = fileName.TrimEnd(',');return "文件名为:" + fileName + "超出";}return "上传成功";}

1、我这里选择的是新建一个接口然后依赖注入一下,如果不想太麻烦可以直接new()出来。

注入好以后新建一个API控制代码如下:

[HttpPost]public async Task<string> UpdoadAsync([FromForm] UpdoadDto updoad){//物理地址,如果拿到源码直接更改成自己电脑的本地路径即可updoad.savePath = @"D:\测试上传图片\";//可以上传的类型updoad.filetype = ".gif|.jpg|.jpeg|.png|.webp";return await _uploadFile.UplodAsync(updoad);}

这样就完成了一个简单的多文件上传,当然一定要记得配跨域哦!

大神勿喷!!

需要前后端源码的可以直接私信我

本文链接地址:https://www.jiuchutong.com/zhishi/299345.html 转载请保留说明!

上一篇:Web网页基于html、CSS设计——“爱家居”素材(html基础网页)

下一篇:机器学习:基于逻辑回归对优惠券使用情况预测分析

  • 关于情人节说说(关于情人节说说)(关于情人节说说搞笑)

    关于情人节说说(关于情人节说说)(关于情人节说说搞笑)

  • 美团账号注销后可以重新注册吗(美团账号注销后商家还能查到交易记录吗)

    美团账号注销后可以重新注册吗(美团账号注销后商家还能查到交易记录吗)

  • akaal10是什么型号(ak aa l10)

    akaal10是什么型号(ak aa l10)

  • 计算器数字键没反应了咋回事(计算器数字键没反应)

    计算器数字键没反应了咋回事(计算器数字键没反应)

  • 为什么家里wifi每隔一段时间就没网了(为什么家里wifi突然搜不到)

    为什么家里wifi每隔一段时间就没网了(为什么家里wifi突然搜不到)

  • 手机轻微弯曲什么原因(手机轻微弯曲什么情况)

    手机轻微弯曲什么原因(手机轻微弯曲什么情况)

  • oppo手机屏幕变成粉色(oppo手机屏幕变黑怎么调回来)

    oppo手机屏幕变成粉色(oppo手机屏幕变黑怎么调回来)

  • 电话手表的卡怎么注销(电话手表的卡怎么办理)

    电话手表的卡怎么注销(电话手表的卡怎么办理)

  • tas一an00是华为什么型号(huaweitas-an00)

    tas一an00是华为什么型号(huaweitas-an00)

  • 微麦投影仪怎么连接手机(微麦投影仪怎么用)

    微麦投影仪怎么连接手机(微麦投影仪怎么用)

  • 华为手机屏幕突然一闪一闪(华为手机屏幕突然变黄了怎么办)

    华为手机屏幕突然一闪一闪(华为手机屏幕突然变黄了怎么办)

  • 华为手机应用助手打不开(华为手机应用助手下载)

    华为手机应用助手打不开(华为手机应用助手下载)

  • 怎样申请建康码(怎么申请健健康码)

    怎样申请建康码(怎么申请健健康码)

  • 一个手机号能申请几个快手(一个手机号能申请几个支付宝账号)

    一个手机号能申请几个快手(一个手机号能申请几个支付宝账号)

  • word如何移动段落(word如何移动段落到前一段)

    word如何移动段落(word如何移动段落到前一段)

  • 手机换外屏需要拆机吗(手机换外屏需要拆后盖吗)

    手机换外屏需要拆机吗(手机换外屏需要拆后盖吗)

  • 启动幻灯片切换可以通过什么命令(切换幻灯片设置)

    启动幻灯片切换可以通过什么命令(切换幻灯片设置)

  • 手机微信怎么交话费(手机微信怎么交燃气费)

    手机微信怎么交话费(手机微信怎么交燃气费)

  • 手机qq群里怎么@所有人(手机qq群里怎么@全部)

    手机qq群里怎么@所有人(手机qq群里怎么@全部)

  • 搜狗输入法自动搜索关闭(搜狗输入法自动计算怎么设置)

    搜狗输入法自动搜索关闭(搜狗输入法自动计算怎么设置)

  • xr自动开机设置(xr如何自动开机)

    xr自动开机设置(xr如何自动开机)

  • 怎样把pdf拆分(怎样把pdf拆分成图片)

    怎样把pdf拆分(怎样把pdf拆分成图片)

  • ES6 - Promise详解及用法(es6promise的理解)

    ES6 - Promise详解及用法(es6promise的理解)

  • css添加边框阴影(css添加边框阴影 立体效果)

    css添加边框阴影(css添加边框阴影 立体效果)

  • 常用帝国cms目录结构分享(帝国cms使用手册)

    常用帝国cms目录结构分享(帝国cms使用手册)

  • 开票软件金税盘
  • 城建税和教育费附加需要计提吗
  • 上交个人所得税分录
  • 进口货物如何确认
  • 劳务报酬增值税和个人所得税都要交吗
  • 个人车卖给公司能抵税吗
  • 暂估发票一直未收回
  • 税务证丢失可以注销吗
  • 以无形资产投资入股缴纳哪些税收
  • 供应商价格折扣
  • 彩票扣税比例
  • 日常生活中各种仪式
  • 供应商转让合同
  • 无形资产内部研究开发支出的确认和计量
  • 土地租赁合同交不交印花税
  • 个人开具工程款发票所得税怎么算
  • 出差补贴费
  • 地税三方协议是什么意思
  • 税种认定登记流程
  • 购进建筑服务进项税额
  • 增值税发票抵扣进项税什么意思
  • 外币折算差额计入什么科目
  • 小规模纳税人医院免增值税吗
  • 哪些科目适用于借方多栏式
  • 营改增后城建税和教育费附加包含在哪里
  • win10 100g不够
  • 非房地产企业的基建管理办法
  • 固定资产的专票可以抵扣吗
  • 在win7系统中,怎么把D盘里的文件移到C盘里?
  • bios设置第一启动项Linux
  • 微软win11预览版
  • 如何获取openai api
  • 增值税发票作废了税钱退还吗
  • 科罗拉多州位置
  • 零星采购无票怎么办
  • 如何配置apache
  • c++好学
  • linux 高并发网络编程
  • 公司车辆出售需要什么手续
  • Uncaught SyntaxError: Unexpected token '<' (at 报错
  • 往来款怎么做账
  • 其他资本公积如何转出
  • 展会门票怎么入账
  • 没授权的帝国cms作为商用行吗
  • 买地建厂房账务处理
  • 织梦论坛
  • SQLite优化方法
  • windowsserver2008r2开启远程桌面
  • 息税前利润变动率的计算公式
  • 利润是用含税价还是去税价
  • 物业公司转售电费增值税
  • 长期借款利息是财务费用吗
  • 公司人事怎么办公积金提取流程?
  • 保险的理解
  • 可以先注销银行信用卡吗
  • 联合账簿是备查账簿和序时账簿的结合
  • sqlserver日期范围
  • windows windows.old
  • linux中的文件
  • 重装系统 xp
  • windows 8whql
  • win7任务管理器怎么打开
  • win7耳机和外放一起响
  • chromexcel
  • android app开发中五种常用布局的运用场合
  • python 执行命令
  • opengl 透视投影
  • JavaScript的setter与getter方法
  • javascript entries
  • 视觉观点
  • vue实现滚动条
  • 文章标题用几号字体
  • vue devtools功能
  • js制作网站
  • shell脚本 ftp
  • 山东省税务局网上办税服务厅
  • 乡镇调研报告最佳范文
  • 怎样加入广东省民间文艺家协会
  • 重庆路桥价值
  • 电子就业协议签了还是应届生
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设