Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >vue选择多个文件并监听选择完成

vue选择多个文件并监听选择完成

作者头像
efonfighting
发布于 2019-10-22 11:39:36
发布于 2019-10-22 11:39:36
3.3K00
代码可运行
举报
文章被收录于专栏:一番码客一番码客
运行总次数:0
代码可运行

一番码客 : 挖掘你关心的亮点。 http://efonfighting.imwork.net

本文目录:

前言vue中实现代码实际效果一番今日

前言

昨天我们实现了vue下获取单个文件的绝对路径,并且通过另外一个按钮将所选文件的路径显示出来。

显然这是很不人性化的,想要人性化,需要解决两个问题:

  • 一次可以选择多个文件
  • 文件选择完后立即显示出所有所选文件的绝对路径

vue中实现

代码

  • 一次可以选择多个文件 这个比较简单,就是需要在file组件里添加一个multiple="multiple"属性即可。
  • 监听文件选择完成 其实也很简单,就是给file组件添加一个值改变的监听事件,这个由change属性来实现。

所有最后关键的一行就是:

<input type="file" id="filename" style="display:none" multiple="multiple" @change="showRealPath"/>

完整实现代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<template>
  <div id="wrapper" align="center">
    <img id="logo" src="~@/assets/logo_efonmark.png" alt="electron-vue" align="center">
    <div align="center">
      <h1> Welcome to EfonMark!</h1>
    </div>

    <div align="center">
      <el-input id="input01"
        type="textarea"
        :autosize="{ minRows: 10, maxRows: 40}"
        placeholder="请选择文件"
        v-model="textarea">
      </el-input>
    </div>

    <div align="center">
      <el-button type="primary" v-on:click="openFile()" round>选择文件</el-button>
      <input type="file" id="filename" style="display:none" multiple="multiple" @change="showRealPath"/>
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      textarea: ''
    }
  },
  methods: {
    openFile: function () {
      document.getElementById('filename').click()
    },
    showRealPath: function () {
      var files = document.getElementById('filename').files
      var paths = ''
      for (var i = 0; i < files.length; i++) {
        paths += (files[i].path + '\n')
      }
      // alert(paths)
      document.getElementById('input01').value = paths
    }
  }
}
</script>

实际效果

点击“选择文件”,可以选中多个本地文件;

完成选择后,所有文件的路径都会显示在输入框内。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一番码客 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
vue下获取所选文件绝对路径
我们在开发electron桌面应用时,因为常常希望对一些本地文件做一些操作,需要获取到这个文件的绝对路径。今天一番在electron-vue下实现了单击按钮选择文件,并获取文件绝对路径然后显示出来的效果。在本来要放弃的时候突然柳暗花明。
efonfighting
2019/10/22
26.3K5
electron开发pdf合并工具(二)
之前我们做了一个简单的界面,但其实并没有什么功能,今天我们基于前段时间一直在学习的vue相关知识,来实现一些后台逻辑。
efonfighting
2019/10/24
9760
electron开发pdf合并工具(二)
electron开发pdf合并工具(一)
前面我们已经对electron即相关的electron-vue、element-ui等做了一定的了解。
efonfighting
2019/10/15
1.1K0
electron开发pdf合并工具(一)
js获取所选文件路径
本来今天想用vue做一个button,点击后选择本地文件,并获取文件路径,但只在html下实现了,vue下还要研究下。
efonfighting
2019/10/16
14.7K0
Vue前台可以生成二维码了,您还在用后台生成吗?
  简介:维码现在已经随处可见了,现在的生活中各种二维码呈现在大家面前,方便大家手机或者手持枪等手持设备进行识别,同时用来标识当前商品或者物品的唯一性。 我们在工业等生产制造业用到的二维码更多,像部品、BOM组件等等。 所以我们无论是做BS开发或者客户端开发,有时用到生成二维码的时候还是比较多的。 以前用java或者.net等后端语言进行生成,前台其实也是可以生成二维码,今天我们看一下vue前台生成二维码。
十分钟空间
2022/08/17
8280
java从入门到精通二十五(vue和element 对项目的改进)
我们之前获取前端表单数据的时候,我们需要进行大量的操作。当前我只是进行了浅显的一些认识。
兰舟千帆
2022/07/16
9060
java从入门到精通二十五(vue和element 对项目的改进)
vue项目引入markdown
git地址:https://github.com/showdownjs/showdown 其实引入markdown挺简单的:
陨石坠灭
2018/10/19
2.1K0
vue项目引入markdown
使用Vue封装一个实用的人脸识别组件
由于我们的电脑有的有摄像头,有的没有摄像头,所以我们需要根据不同的场景来封装这个组件。先放个图吧,大家可以看得更加直观一些。
Vam的金豆之路
2021/11/30
3.5K1
使用Vue封装一个实用的人脸识别组件
JS如何替换元素内容
http://mpvideo.qpic.cn/0bc3eaajwaaa4qaelx3bjvrvaigdtmqabgya.f10002.mp4?dis_k=4cf17def14cb58de5ca3ebc
itclanCoder
2022/12/07
11.1K0
Vue传值与状态管理总结
使用prop使得父子组件形成一个单向下行绑定:一般情况下,父级prop的更新会流动到子组件中,但是反过来则不行;
前端老道
2022/03/29
2.2K0
轻松实现多图片上传:选择文件夹与拖拽上传区域全攻略
选择多个文件 在 JavaScript 中,要实现选择多个文件,可以使用 HTML 的<input>元素的multiple属性。以下是示例代码:
友儿
2024/07/31
2010
轻松实现多图片上传:选择文件夹与拖拽上传区域全攻略
AES 加解密(包含JS、VUE、JAVA、MySQL)工具方法
AES 是 Advanced Encryption Standard 的缩写,是最常见的对称加密算法。AES 在密码学中又称 Rijndael 加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的 DES,已经被多方分析且广为全世界所使用。
默存
2024/04/23
2.5K0
AES 加解密(包含JS、VUE、JAVA、MySQL)工具方法
vue2.0+Element-ui实战案例
我们将会选择使用一些 vue 周边的库vue-cli, vue-router,axios,moment,Element-ui搭建一个前端项目案例,后端数据接口,会使用json-server快速搭建一个本地的服务,方便对数据的增删改查,
小周sir
2019/09/23
2.3K0
vue2.0+Element-ui实战案例
Vue实现在线文档预览
本次实现的文档预览的类型有:docx, xlsx, pptx, pdf,以及纯文本、代码文件和各种图片、视频格式的在线预览
不愿意做鱼的小鲸鱼
2023/07/09
4.2K0
Vue实现在线文档预览
二开vue-admin-template-4-curd
腾云先锋(TDP,Tencent Cloud Developer Pioneer)是腾讯云GTS官方组建并运营的技术开发者群体。这里有最专业的开发者&客户,能与产品人员亲密接触,专有的问题&需求反馈渠道,有一群志同道合的兄弟姐妹。来加入属于我们开发者的社群吧!
无敌小菜鸟
2022/04/02
3820
二开vue-admin-template-4-curd
Vue实现文件上传(带进度条和取消上传功能)
这里我只写了单一文件上传的demo,并且只限制了文件大小不能超过5M。如果想限制上传的文件类型,可自行在input标签中进行设置,如果想要实现多个文件一起上传,先要设置input标签属性multiple="multiple",然后利用循环将每一个文件数据存入到formData中,最后作为参数传给服务端进行处理。 因为个人习惯原因,我先对axios进行了封装,创建service.js文件,代码如下:
前端小tips
2021/11/25
2.3K0
Vue实现文件上传(带进度条和取消上传功能)
vue-print-nb 打印插件的使用
import Print from 'vue-print-nb' Vue.use(Print)
tianyawhl
2020/06/15
5.9K0
vue上传图片并预览
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/148359.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/02
3.9K0
Vue上传文件操作(没有CV,认真看)
图示为单文件上传,可将form改为fileList实现多文件上传,这是通过axios异步上传,若是想直接上传可将内容为上传文件那个button
全栈程序员站长
2022/11/18
7160
低代码可视化-PC商城管理系统-产品分类--代码生成器
产品分类在商城管理系统中扮演着至关重要的角色。通过合理的分类,用户能够更快速地找到所需商品,提高购物效率。同时,分类也有助于商城对商品进行更有效的管理和展示,从而提升销售额和用户忠诚度。
用户7154236
2024/10/10
1090
低代码可视化-PC商城管理系统-产品分类--代码生成器
相关推荐
vue下获取所选文件绝对路径
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验