位置: 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基础网页)

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

  • App推广的10大难题,量上不去有时候不是你的错(app推广常见问题)

    App推广的10大难题,量上不去有时候不是你的错(app推广常见问题)

  • 华为mate40pro电池是多大容量的(华为mate40pro电池多少毫安)

    华为mate40pro电池是多大容量的(华为mate40pro电池多少毫安)

  • 全民k歌怎么一天升级12(全民k歌怎么开歌房)

    全民k歌怎么一天升级12(全民k歌怎么开歌房)

  • 两个安卓手机怎么才能关联呢(两个安卓手机怎么定位对方位置)

    两个安卓手机怎么才能关联呢(两个安卓手机怎么定位对方位置)

  • 快手垂直度能改过来么(快手改垂直度了,没有之前的播放量高,怎么办)

    快手垂直度能改过来么(快手改垂直度了,没有之前的播放量高,怎么办)

  • 拼多多拼小圈怎么关闭(拼多多拼小圈怎么关闭不让别人看)

    拼多多拼小圈怎么关闭(拼多多拼小圈怎么关闭不让别人看)

  • 饿了差评了能不能修改(饿了评论差评第三天可以删掉吗)

    饿了差评了能不能修改(饿了评论差评第三天可以删掉吗)

  • 抖音收不到关注人推送消息(抖音收不到关注人的视频)

    抖音收不到关注人推送消息(抖音收不到关注人的视频)

  • 支持mxm显卡的笔记本(mx显卡支持cuda吗)

    支持mxm显卡的笔记本(mx显卡支持cuda吗)

  • soul仅陌生人可见是什么意思(soul仅陌生人可见)

    soul仅陌生人可见是什么意思(soul仅陌生人可见)

  • 华为后面的标签怎么撕(华为后面的标签有什么用)

    华为后面的标签怎么撕(华为后面的标签有什么用)

  • ipadmini5可以用笔吗(ipadmini5可不可以用笔)

    ipadmini5可以用笔吗(ipadmini5可不可以用笔)

  • 开启双重认证什么意思(开始双重认证)

    开启双重认证什么意思(开始双重认证)

  • 手机摄像头脏了怎么办(手机摄像头脏了用酒擦可以吗)

    手机摄像头脏了怎么办(手机摄像头脏了用酒擦可以吗)

  • 微信多个悬浮窗怎么设置(微信,悬浮窗)

    微信多个悬浮窗怎么设置(微信,悬浮窗)

  • vue怎么调照片时间(vue图片显示)

    vue怎么调照片时间(vue图片显示)

  • 淘宝电脑端描述怎么写(淘宝电脑端描述使用文本编辑怎么弄)

    淘宝电脑端描述怎么写(淘宝电脑端描述使用文本编辑怎么弄)

  • opporeno和reno2区别(opporeno和reno2有什么区别)

    opporeno和reno2区别(opporeno和reno2有什么区别)

  • iphone8plus屏幕材质(苹果8plus屏幕材质好不好)

    iphone8plus屏幕材质(苹果8plus屏幕材质好不好)

  • 宏病毒感染文件类型(宏病毒感染文件用wps打开)

    宏病毒感染文件类型(宏病毒感染文件用wps打开)

  • 苹果电脑mac系统备份 mac通过Time Machine实行系统备份与还原方法(苹果电脑mac系统怎么升级)

    苹果电脑mac系统备份 mac通过Time Machine实行系统备份与还原方法(苹果电脑mac系统怎么升级)

  • Win7系统僵尸部队4存档丢失的解决方法

    Win7系统僵尸部队4存档丢失的解决方法

  • CSS设置背景图片不显示的解决方法(css设置背景图片填充)

    CSS设置背景图片不显示的解决方法(css设置背景图片填充)

  • 什么是销项税额抵减
  • 土地增值税与增值税
  • 水利建设基金怎么交
  • 研发费用加计扣除是什么意思啊
  • 加计扣除产生的滞纳金
  • 个体工商户可以给自己交五险一金吗
  • 研发费用利润表中
  • 收回已作为坏账准备的应收账款会计分录
  • 供应链公司的组织架构图
  • 企业发生的间接生产费用应
  • 发票有误多交的钱怎么办
  • 用友为啥会出现期初调整
  • 接收境外汇款是什么意思
  • 实收资本印花税怎么申报税目
  • 开票软件维护费计入什么科目
  • 开票3个点13个点是什么意思
  • 实际利率法怎么理解
  • 工程发票需要进项吗
  • 货物退回发票冲红会计分录
  • 建筑挂靠管理费用如何账务处理?
  • 专项应付款会计科目代码
  • 财务费用余额在借方是正数还是负数
  • 账套更改
  • 如何设置win7系统密码
  • 结转应交增值税会计科目
  • 个人综合所得适用什么税率?
  • php获取长度
  • 苹果电脑快速启动键是哪个
  • vue print nb 教程
  • imgrd.exe是什么
  • wordpress 常用函数
  • 控股公司的账务处理
  • 设备租赁的方式有哪些
  • 小企业会计准则财务报表至少包括
  • php sw
  • 给工程项目买保险是选哪个保险公司
  • 特斯拉适用于什么车型
  • PyTorch深度学习实战 | 神经网络的优化难题
  • python中的包有哪些
  • 专票认证对企业有影响吗
  • 其他应收账款怎么做预算会计分录
  • 金蝶kis资产负债表中预付款项年初余额公式怎么设置?
  • 营业执照如何申请移出异常
  • phpcms2008
  • 企业破产员工补偿标准是按上年平均工资
  • 预计可变现净值与账面成本的关系
  • 怎么查询mysql sql_mode
  • sql 字符串
  • 中秋福利做账
  • 新成立企业多长时间可以销售小微企业
  • 不征税收入和免税收入的本质区别
  • 现金收入支出表怎么填
  • 备用金发工资到底可不可以?
  • 交通运输行业指什么
  • 进项税转出补缴增值税 城建税及两费
  • 汽车销售企业营销策略
  • 收到票据之后贴什么标签
  • 房地产开发企业建造的商品房,在出售前
  • count(10,2,5)
  • sqlserver触发器语法
  • win8.1升级win10系统
  • ubuntu20.04怎么用
  • wind10怎么打开摄像头
  • win10的outlook在哪
  • android的开发
  • Android游戏开发教程
  • Extjs4 类的定义和扩展实例
  • jquery验证码
  • nodeJS文件操作自动创建目录
  • javascript 作用域
  • express中间件面试题
  • unity cpu优化
  • unity物理引擎原理
  • jquery中的动画方法有哪些
  • Unity GameObject.activeSelf, GameObject.activeInHierarchy,GameObject.SetActive和SetActiveRecursively
  • 专项扣除赡养老人是什么意思
  • 一般纳税人如何开具3%的发票
  • 增值税普通发票有什么用
  • 土地增值税的房屋转让指出售 赠与
  • 小学的困难补助什么时候发
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设