Vue触发input选取文件点击事件操作


Posted in Javascript onAugust 07, 2020

CSS

.upload-btn-box {
  margin-bottom: 10px;
  button {
    margin-right: 10px;
  }
  input[type=file] {
    display: none;
  }
}

HTML

<div class="upload-btn-box">
<Button @click="choiceImg" icon="ios-cloud-upload-outline" type="primary">点击上传</Button>
  <input ref="filElem" type="file" class="upload-file" @change="getFile">
</div>

Script

choiceImg(){
  this.$refs.filElem.dispatchEvent(new MouseEvent('click')) 
},
getFile(){
      var that = this;
      const inputFile = this.$refs.filElem.files[0];
      if(inputFile){
        if(inputFile.type !== 'image/jpeg' && inputFile.type !== 'image/png' && inputFile.type !== 'image/gif'){
          alert('不是有效的图片文件!');
          return;
        }
        this.imgInfo = Object.assign({}, this.imgInfo, {
          name: inputFile.name,
          size: inputFile.size,
          lastModifiedDate: inputFile.lastModifiedDate.toLocaleString()
        })
        const reader = new FileReader();
        reader.readAsDataURL(inputFile);
        reader.onload = function (e) {
          that.imgSrc = this.result;
        }
      } else {
        return;
      }
    }

补充知识: vue下打包时几个文件选择文件打包一起 并做懒加载

直接上代码

const DeviceManage = r => require.ensure([], () => r(require(deviceManagePath + 'main/DeviceManage')), 'g-DeviceManage');
const SingleDeviceSet = r => require.ensure([], () => r(require(deviceManagePath + 'deviceSet/SingleDeviceSet')), 'g-DeviceManage');
const ModifyNo = r => require.ensure([], () => r(require(deviceManagePath + 'modifyNo/ModifyNo')), 'g-DeviceManage');
const PricePerTime = r => require.ensure([], () => r(require(deviceManagePath + 'pricePerTime/PricePerTime')), 'g-DeviceManage');
const SetParams = r => require.ensure([], () => r(require(deviceManagePath + 'setParams/SetParams')), 'g-DeviceManage');
const ShowDevicePrice = r => require.ensure([], () => r(require(deviceManagePath + 'showDevicePrice/ShowDevicePrice')), 'g-DeviceManage');
const parameterSetting = r => require.ensure([], () => r(require(deviceManagePath + 'parameterSetting/parameterSetting')), 'g-DeviceManage');
const SetParams3G = r => require.ensure([], () => r(require(deviceManagePath + 'setParams3G/SetParams3G')), 'g-Device3Gparams');

这么写 所有g-DeviceManage的文件会被打包在一起

以上这篇Vue触发input选取文件点击事件操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS 文件大小判断的实现代码
Apr 07 Javascript
JS 操作符整理[推荐收藏]
Nov 15 Javascript
学习从实践开始之jQuery插件开发 对话框插件开发
Apr 26 Javascript
jQuery随机切换图片的小例子
Apr 18 Javascript
tangram框架响应式加载图片方法
Nov 21 Javascript
jQuery实现点击后高亮背景固定显示的菜单效果【附demo源码下载】
Sep 21 Javascript
微信开发之调起摄像头、本地展示图片、上传下载图片实例
Dec 08 Javascript
JS实现的base64加密解密操作示例
Apr 18 Javascript
JS实现面向对象继承的5种方式分析
Jul 21 Javascript
Vue中rem与postcss-pxtorem的应用详解
Nov 20 Javascript
深入理解 ES6中的 Reflect用法
Jul 18 Javascript
解决vue-photo-preview 异步图片放大失效的问题
Jul 29 Javascript
vue+element获取el-table某行的下标,根据下标操作数组对象方式
Aug 07 #Javascript
vue.js click点击事件获取当前元素对象的操作
Aug 07 #Javascript
Vue跨域请求问题解决方案过程解析
Aug 07 #Javascript
JQuery通过键盘控制键盘按下与松开触发事件
Aug 07 #jQuery
vue递归获取父元素的元素实例
Aug 07 #Javascript
在vue中使用Base64转码的案例
Aug 07 #Javascript
JavaScript代码模拟鼠标自动点击事件示例
Aug 07 #Javascript
You might like
PHP 遍历XP文件夹下所有文件
2008/11/27 PHP
支持中文字母数字、自定义字体php验证码代码
2012/02/27 PHP
如何在PHP中使用正则表达式进行查找替换
2013/06/13 PHP
修改apache配置文件去除thinkphp url中的index.php
2014/01/17 PHP
QQ互联一键登录审核不通过的解决方案
2014/09/10 PHP
php的扩展写法总结
2019/05/14 PHP
在laravel中实现将查询的对象转换为多维数组的函数
2019/10/21 PHP
Yii使用DbTarget实现日志功能的示例代码
2020/07/21 PHP
Javascript 不能释放内存.
2006/09/07 Javascript
JAVASCRIPT keycode总结
2009/02/04 Javascript
js操作时间(年-月-日 时-分-秒 星期几)
2010/06/20 Javascript
纯js简单日历实现代码
2013/10/05 Javascript
如何在JavaScript中实现私有属性的写类方式(二)
2013/12/04 Javascript
js 动态修改css文件的方法
2014/08/05 Javascript
jQuery中nextAll()方法用法实例
2015/01/07 Javascript
javascript实现九宫格相加数值相等
2020/05/28 Javascript
JS判断字符串字节数并截取长度的方法
2016/03/05 Javascript
react-redux中connect()方法详细解析
2017/05/27 Javascript
JS实现的随机排序功能算法示例
2017/06/09 Javascript
解决Vue不能检测数组或对象变动的问题
2018/02/24 Javascript
vue实现滑动超出指定距离回顶部功能
2019/07/31 Javascript
vue的$http的get请求要加上params操作
2020/11/12 Javascript
arcgis.js控制地图地体的显示范围超出区域自动弹回(实现思路)
2021/01/28 Javascript
Python中的元类编程入门指引
2015/04/15 Python
Python max内置函数详细介绍
2016/11/17 Python
python实现最长公共子序列
2018/05/22 Python
如何使用python爬虫爬取要登陆的网站
2019/07/12 Python
Django 自定义分页器的实现代码
2019/11/24 Python
深入理解Python 多线程
2020/06/16 Python
详解CSS3新增的背景属性
2019/12/25 HTML / CSS
工程造价与财务管理专业应届生求职信
2013/10/06 职场文书
中学生班主任评语
2014/01/30 职场文书
2014年语文教研组工作总结
2014/12/06 职场文书
设置IIS Express并发数
2022/07/07 Servers
python解析照片拍摄时间进行图片整理
2022/07/23 Python
Redis实战之Lettuce的使用技巧详解
2022/12/24 Redis