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

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

  • 新浪微博增加高质量粉丝的技巧有哪些?(微博增高长高分享达人)

    新浪微博增加高质量粉丝的技巧有哪些?(微博增高长高分享达人)

  • steam怎么加不了好友(steam怎么加不了人)

    steam怎么加不了好友(steam怎么加不了人)

  • 荣耀30s支持光学防抖吗(荣耀30s光学变焦)

    荣耀30s支持光学防抖吗(荣耀30s光学变焦)

  • 滴滴打车记录如何查询(滴滴打车记录如何永久删除)

    滴滴打车记录如何查询(滴滴打车记录如何永久删除)

  • 快手上怎么找到关注的人(快手上怎么找到微信好友)

    快手上怎么找到关注的人(快手上怎么找到微信好友)

  • 显示器重影(显示器重影怎么调)

    显示器重影(显示器重影怎么调)

  • 探探上如何精准找到一个人(探探上如何精准搜索)

    探探上如何精准找到一个人(探探上如何精准搜索)

  • sql语言具有哪三个常见功能(sql语言具有哪三大功能)

    sql语言具有哪三个常见功能(sql语言具有哪三大功能)

  • 我自己删掉的朋友圈怎么还原(我自己删掉的朋友圈怎么还原苹果11)

    我自己删掉的朋友圈怎么还原(我自己删掉的朋友圈怎么还原苹果11)

  • 秘乐短视频是哪家公司的(秘乐短视频到底怎么了)

    秘乐短视频是哪家公司的(秘乐短视频到底怎么了)

  • 华为p40机身厚度(华为p40pro+机身厚度)

    华为p40机身厚度(华为p40pro+机身厚度)

  • mtk6799处理器相当于高通多少(mtk6799处理器相当于骁龙什么处理器)

    mtk6799处理器相当于高通多少(mtk6799处理器相当于骁龙什么处理器)

  • 鼠标移动方向突然相反(鼠标移动方向突然相反win11)

    鼠标移动方向突然相反(鼠标移动方向突然相反win11)

  • B站如何下载视频(b站如何下载视频到u盘)

    B站如何下载视频(b站如何下载视频到u盘)

  • 机箱底部风扇和显卡冲突吗(机箱底部风扇和显卡贴在一起了)

    机箱底部风扇和显卡冲突吗(机箱底部风扇和显卡贴在一起了)

  • 华为v30微信视频美颜怎么开(华为v30微信视频美颜设置)

    华为v30微信视频美颜怎么开(华为v30微信视频美颜设置)

  • 微信里的群公告是怎么一回事(微信里的群公告如何删除)

    微信里的群公告是怎么一回事(微信里的群公告如何删除)

  • 酷我音乐里怎么录歌(酷我音乐里怎么取消自动续费)

    酷我音乐里怎么录歌(酷我音乐里怎么取消自动续费)

  • 360电话手表怎么添加联系人(360电话手表怎么激活使用教程)

    360电话手表怎么添加联系人(360电话手表怎么激活使用教程)

  • 拼多多精选推荐怎么关(拼多多精选推荐是自己平时买过的吗)

    拼多多精选推荐怎么关(拼多多精选推荐是自己平时买过的吗)

  • 魅族16s有没有红外(魅族16有红外线功能吗)

    魅族16s有没有红外(魅族16有红外线功能吗)

  • 1150针cpu型号汇总(1150针的cpu型号表)

    1150针cpu型号汇总(1150针的cpu型号表)

  • 最新Win1021H1专业版永久免费激活码推荐 含激活工具(window10专业版2021)

    最新Win1021H1专业版永久免费激活码推荐 含激活工具(window10专业版2021)

  • 企业签订技术培训合同是否需要缴纳印花税?
  • 股票印花税是多少最新
  • 公司食堂菜金会计分录
  • 已经抵扣的发票还能红冲吗?怎么操作
  • 建筑业预收账款如何缴税
  • 企业注销当月无法申报个税
  • 公司收到银行承兑汇票会计分录
  • 建设期利息对当年的借款如何计息?
  • 福利费要交个人税吗
  • 汽车修理费增值税税率
  • 餐费报销需要发票吗
  • 异地不动产租赁 深圳税务 所得税
  • 增值税小规模纳税人的税率
  • 董事费监事费高管薪酬标准
  • 职工教育经费怎么做账
  • 特殊性税务处理和一般性税务处理的区别
  • 坏账准备本期期末应有金额
  • 2019一般纳税人转小规模
  • 腾讯电脑管家游戏模式
  • 新版edge浏览器文字不显示
  • 多发的工资可以从下月扣除吗
  • 在建工程转固定资产后如何计提折旧
  • 单位租房的房租怎么入账
  • 中秋佳节发放职工福利的话语
  • rapimgr.exe - rapimgr进程是什么文件.有哪些作用
  • uc浏览器不让访问网页
  • linux 密码重置
  • php的数组函数
  • 企业发生的哪些费用可以结转
  • 甲方工程扣款如何处理
  • php的mysql_query
  • 社保征集单是什么样子的
  • 一般纳税人差额征税申报表怎么填
  • 关于固定资产抵扣的税务规定
  • kindeditor编辑器图片上传
  • 自产产品发给员工账务处理
  • php批量更新数据库
  • 【AutoGPT】你自己运行,我先睡了—— ChatGPT过时了吗?
  • for of 与for in
  • php jsondecode
  • 借款利息记入短期借款吗
  • 社保可以补交吗
  • 预缴税款可以抵扣简易计税
  • 房屋租赁如何入账
  • 小规模纳税人增值税申报表怎么填
  • 个税的代扣代缴
  • 应付职工薪酬账户的明细账户有
  • 普通发票能做进项吗
  • 出租车发票能不能抵扣进项
  • 如何计算生产费用
  • 先付款后收到发票
  • 行政事业单位核销固定资产的账务处理
  • 公司发放加班补贴怎么做账
  • 通行费的进项抵税怎么算
  • 营改增后工程项目计价规则也随之发生了改变对还是错
  • 日记账怎么设置
  • solaris开放指定端口
  • qq远程协助点不动
  • mac自动操作怎么停止
  • win10ie
  • 怎么用苹果电脑打印照片
  • win10移动版微信uwp
  • linux怎么在桌面创建文件
  • lookAtCamera
  • 如何搭建环境变量
  • json查询语句
  • express中间件面试题
  • jquery?
  • jquery放在head还是body
  • node.js怎么用
  • JS中call/apply、arguments、undefined/null方法详解
  • python文字检测
  • 冒烟测试和接口测试
  • js字段截取
  • 彩票中奖归出钱人还是中奖人
  • 我的世界服务器怎么创建
  • 深圳公寓出售要交什么税
  • 电子税务平台怎么红冲纸质发票
  • 河北省发票查询真伪查询国税
  • 财务公司怎么做
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设