Web前端之上传文件夹、webkitdirectory
MENU前言Element-Ui写法input写法前言1、以下代码只实现的单个文件夹的上传原本需求是实现选择多个文件夹上传但是没找到实现的方法。如果想实现多个文件夹上传可以给这些文件夹新建一个父级文件夹点击上传的时候选择父级文件夹就能遍历该父级文件夹下的所有子集文件夹这样就能实现多个文件夹上传了。2、其他文章链接文章内容并没有去实践有兴趣的伙伴可以看看。Element-Ui写法Htmlel-uploadclassupload-demoaction#:on-removefileRemove:on-changefileChangaccept:auto-uploadfalse:multipletrue:file-listform.instFilePicsrefuploadFileel-buttonsizesmalltypeprimaryiclassel-icon-folder-opened/i/el-button/el-uploadJavaScripdata(){return{form:{instFilePics:[],instFile:[]},}},mounted(){// 以下代码有时候可能写法不同// 可在控制台打印一层一层的找input// 再加webkitdirectory属性this.$refs.uploadFile.$children[0].$refs.input.webkitdirectorytrue;},methods{fileChang(file,fileList,name){this.form.instFilePicsfileList;},fileRemove(file,fileList,name){this.form.instFilePicsfileList},}解析html01、el-upload是一个Element UI的上传组件用于上传文件。02、classupload-demo为上传组件添加一个CSS类用于样式定制。03、action#指定上传的服务器地址这里设置为#表示不进行实际的上传操作。04、:on-removefileRemove监听文件被移除的事件当文件被移除时调用fileRemove方法。05、:on-changefileChang监听文件变化的事件当文件发生变化时调用fileChang方法。06、accept指定可以上传的文件类型这里为空表示不限制文件类型。07、:auto-uploadfalse设置为false表示上传操作不会自动进行需要手动触发。08、:multipletrue设置为true表示支持多文件上传。09、:file-listform.instFilePics绑定一个文件列表这个列表将显示在上传组件中。10、refuploadFile为上传组件设置一个引用可以在Vue实例中通过this.$refs.uploadFile访问到这个组件。JavaScrip1、data()定义组件的数据其中form对象包含两个数组instFilePics用于存储上传的文件列表instFile可能用于其他文件上传的数组。2、mounted()在组件挂载到DOM后执行通过this.$refs.uploadFile.$children[0].$refs.input.webkitdirectory true;设置文件输入框支持选择文件夹。3、methods定义两个方法fileChang和fileRemove。3.1、fileChang(file, fileList, name)当文件列表发生变化时更新form.instFilePics为最新的文件列表。3.2、fileRemove(file, fileList, name)当文件被移除时更新form.instFilePics为最新的文件列表。总结代码段实现一个文件上传组件用户可以选择文件或文件夹进行上传上传的文件列表会显示在界面上。通过fileChang和fileRemove方法可以处理文件列表的变化和文件的移除操作。input写法Htmldivclassselect-files-btnel-buttontypeprimaryclickchoiceFilesiclassel-icon-folder-opened/i/el-buttoninputreffilElemtypefilemultipleclassupload-filewebkitdirectorychangegetFile//divJavaScripmethods:{choiceFiles(){// 以下代码有时候写法不同// 可在控制台打印一层一层的找inputthis.$refs.filElem.click();},getFile(e){letfilese.target.files;console.log(files);}}解析html1、div classselect-files-btn是一个包含按钮和文件输入框的容器。2、el-button typeprimary clickchoiceFiles是一个Element UI的按钮组件类型为primary表示按钮是主要操作按钮。clickchoiceFiles是一个事件监听器当按钮被点击时会调用Vue实例中的choiceFiles方法。3、i classel-icon-folder-opened/i是一个图标使用Element UI的图标类显示一个打开的文件夹图标。4、input reffilElem typefile multiple classupload-file webkitdirectory changegetFile/是一个文件输入框允许用户选择多个文件(multiple属性)。reffilElem是一个Vue的引用允许在Vue实例中直接访问这个DOM元素。webkitdirectory属性允许用户选择文件夹而不是单个文件。changegetFile是一个事件监听器当文件选择框的值发生变化时会调用Vue实例中的getFile方法。JavaScrip1、choiceFiles()方法会在用户点击按钮时被调用。它通过this.$refs.filElem.click()模拟点击文件输入框允许用户选择文件而不直接点击输入框。2、getFile(e)方法会在文件输入框的值发生变化时被调用(即用户选择了文件后)。e.target.files包含用户选择的所有文件然后这些文件会被打印到控制台。总结代码段提供一个用户界面允许用户通过点击一个按钮来选择文件或文件夹并在选择后将文件信息打印到控制台。这通常用于文件上传功能。

相关新闻

Web前端之监听元素的重叠度、设置所有元素的滚动条宽度都为0、节点布局的交叉状态、生成随机图片、阮一峰、标签、IntersectionObserver

Web前端之监听元素的重叠度、设置所有元素的滚动条宽度都为0、节点布局的交叉状态、生成随机图片、阮一峰、标签、IntersectionObserver

MENU静态效果HtmlJavaScriptStyleIntersectionObserver静态效果 Html <div><div id"idBox" class"box"></div><div id"idLoading" class"loading">加载更多</div> </div>JavaScript function i…

2026/7/6 20:27:15 阅读更多 →
服务端之nestJS常用异常类及封装自定义响应模块

服务端之nestJS常用异常类及封装自定义响应模块

MENU前言常用异常类&#xff08;由nestjs/common提供&#xff0c;一&#xff09;常用异常类&#xff08;由nestjs/common提供&#xff0c;二&#xff09;示例自定义异常&#xff08;可选&#xff09;自定义响应模块前言 在NestJS中&#xff0c;nestjs/common提供了大量的内置异…

2026/7/4 16:43:11 阅读更多 →
OBLITERATUS:解锁大模型无限潜力

OBLITERATUS:解锁大模型无限潜力

GitHub 平台功能丰富&#xff0c;涵盖 AI 代码创作、开发者工作流程等多方面。而 OBLITERATUS 作为先进开源工具包&#xff0c;能消除大语言模型拒绝行为&#xff0c;还推动科研发展。GitHub 功能全景GitHub 提供了全面的平台功能&#xff0c;在 AI 代码创作方面&#xff0c;有…

2026/5/17 8:52:17 阅读更多 →

最新新闻

Dify搭建智能客服工作流:设计到生产环境部署

Dify搭建智能客服工作流:设计到生产环境部署

我之前文章已经搭建好dify&#xff0c;这里直接用一、1、这里主页选择聊天机器人2、在工作室找到你的新建聊天机器人&#xff0c;点进去3、用户输入-知识检索-llm-直接回复4、先添加LLM模型qwen3:8b5、添加嵌入式模型bge-m36、Dify 的 Marketplace里面主要是一些扩展插件二、返…

2026/7/7 11:35:07 阅读更多 →
OpenCore Legacy Patcher:为老款Mac赋予新生的内存注入技术方案

OpenCore Legacy Patcher:为老款Mac赋予新生的内存注入技术方案

OpenCore Legacy Patcher&#xff1a;为老款Mac赋予新生的内存注入技术方案 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 面对苹果官方对旧款Mac的macOS支持…

2026/7/7 11:35:07 阅读更多 →
一位主播的进化史:从手忙脚乱到从容掌控多平台直播

一位主播的进化史:从手忙脚乱到从容掌控多平台直播

一位主播的进化史&#xff1a;从手忙脚乱到从容掌控多平台直播 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp 你是否也曾经历过这样的场景&#xff1f;晚上8点&#xff0c;直播即将开始…

2026/7/7 11:31:06 阅读更多 →
高效文档下载神器:一键获取30+平台文档的智能解决方案

高效文档下载神器:一键获取30+平台文档的智能解决方案

高效文档下载神器&#xff1a;一键获取30平台文档的智能解决方案 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档&#xff0c;但是相关网站浏览体验不好各种广告&#xff0c;各种登录验证&#xff0c;需要很多步骤才能下载文档&#xff0c;该脚本就是为了解…

2026/7/7 11:29:05 阅读更多 →
计算机毕业设计之基于jsp民宿网站的设计与实现

计算机毕业设计之基于jsp民宿网站的设计与实现

本论文主要论述了如何使用JSP技术开发一个民宿网站&#xff0c;本系统将严格按照软件开发流程进行各个阶段的工作&#xff0c;采用B/S架构&#xff0c;面向对象编程思想进行项目开发。在引言中&#xff0c;作者将论述民宿网站的当前背景以及系统开发的目的&#xff0c;后续章节…

2026/7/7 11:29:05 阅读更多 →
统一过程RUP:微软的“四阶段疗法“

统一过程RUP:微软的“四阶段疗法“

统一过程RUP:微软的"四阶段疗法" 开篇:软件开发的"问诊流程" 想象一下你去医院看病: 第一步:挂号问诊 医生问你的症状、病史,做初步检查。 第二步:开检查单 医生根据初步判断,开化验单、B超单等检查。 第三步:确诊 根据检查结果,确定你得了什…

2026/7/7 11:27:05 阅读更多 →

日新闻

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

图片浏览是移动应用中最高频的场景之一。从社交应用的照片流到电商平台的商品图集&#xff0c;从旅游应用的景点相册到摄影作品展示——用户对图片浏览的体验要求不断提高&#xff1a;流畅的切换动画、直观的缩略图导航、便捷的收藏操作、自动播放模式。HarmonyOS NEXT ArkUI 虽…

2026/7/7 0:05:16 阅读更多 →
24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V稳压芯片完整选型指南 PW8600 PW75XX PW2815 PW2312B LDODC/DC全方案 一、24V稳压方案概述 24V直流电源在工业自动化、门禁系统、电梯控制、汽车电子、LED驱动、监控设备等场景中应用极广&#xff0c;是最常见的中压直流母线电压。要将24V母线稳定降压至下游MCU、传感器…

2026/7/7 0:05:16 阅读更多 →
RAG+知识图谱混合检索与Graph RAG核心对比

RAG+知识图谱混合检索与Graph RAG核心对比

做企业RAG落地的团队&#xff0c;往往容易卡在一容易踩坑的选型难题&#xff1a; 当需求单纯靠向量RAG搞不定、单纯靠知识图谱也搞不定&#xff0c;必须同时依赖「文本语义理解 实体关系推理」时&#xff0c;到底是做「向量图谱混合检索」就够了&#xff0c;还是必须上「Grap…

2026/7/7 0:07:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools&#xff1a;5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱&#xff0c;支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/6 8:11:50 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里&#xff0c;参与了关于混合后量子密码学的讨论&#xff0c;应付端点攻击找茬的人&#xff0c;还参与留言板讨论后&#xff0c;发现“威胁模型”对多数人仍是陌生概念&#xff0c;且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/6 8:11:52 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”&#xff1a;我理解的渗透测试到底是什么&#xff1f;每次看到新闻里说某个大公司的数据被“黑”了&#xff0c;或者某个网站被攻击导致服务瘫痪&#xff0c;你是不是和我一样&#xff0c;心里会冒出两个念头&#xff1a;一是“这黑客真厉害”&#x…

2026/7/6 6:52:56 阅读更多 →

月新闻