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 相关文章推荐
jQuery :nth-child前有无空格的区别分析
Jul 11 Javascript
JQUERY对单选框(radio)操作的小例子
Apr 25 Javascript
js模仿windows桌面图标排列算法具体实现(附图)
Jun 16 Javascript
使用node.js 制作网站前台后台
Nov 13 Javascript
javascript实现禁止复制网页内容
Dec 16 Javascript
JavaScript开发Chrome浏览器扩展程序UI的教程
May 16 Javascript
AngularJS入门教程之更多模板详解
Aug 19 Javascript
BootStrap 超链接变按钮的实现方法
Sep 25 Javascript
vue实现一个移动端屏蔽滑动的遮罩层实例
Jun 08 Javascript
小程序根据手机机型设置自定义底部导航距离
Jun 04 Javascript
深入浅出vue图片路径的实现
Sep 04 Javascript
Vue页面切换和a链接的本质区别详解
Nov 12 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
CI使用Tank Auth转移数据库导致密码用户错误的解决办法
2014/06/12 PHP
ajax+php控制所有后台函数调用
2015/07/15 PHP
Laravel框架实现发送短信验证功能代码
2016/06/06 PHP
PHP实现Session入库/存入redis的方法
2017/05/04 PHP
详解laravel passport OAuth2.0的4种模式
2019/11/04 PHP
Yii使用EasyWechat实现小程序获取用户的openID的方法
2020/04/29 PHP
JavaScript 事件冒泡简介及应用
2010/01/11 Javascript
JS添加删除一组文本框并对输入信息加以验证判断其正确性
2013/04/11 Javascript
jquery 快速回到页首的方法
2013/12/05 Javascript
jquery简单实现鼠标经过导航条改变背景图
2013/12/17 Javascript
JS中操作JSON总结
2020/12/06 Javascript
JavaScript实现继承的4种方法总结
2014/10/16 Javascript
DOM基础教程之事件对象
2015/01/20 Javascript
详解JavaScript正则表达式之分组匹配及反向引用
2016/03/09 Javascript
KnockoutJS 3.X API 第四章之表单value绑定
2016/10/10 Javascript
jQuery 控制文本框自动缩小字体填充
2017/06/16 jQuery
React Native预设占位placeholder的使用
2017/09/28 Javascript
vue中的模态对话框组件实现过程
2018/05/01 Javascript
基于VUE实现的九宫格抽奖功能
2018/09/30 Javascript
vue实现随机验证码功能的实例代码
2019/04/30 Javascript
wxPython中文教程入门实例
2014/06/09 Python
详解Golang 与python中的字符串反转
2017/07/21 Python
Python简单实现socket信息发送与监听功能示例
2018/01/03 Python
Python使用numpy实现BP神经网络
2018/03/10 Python
解决安装pycharm后不能执行python脚本的问题
2019/01/19 Python
python flask安装和命令详解
2019/04/02 Python
Python如何使用字符打印照片
2020/01/03 Python
python圣诞树编写实例详解
2020/02/13 Python
利用4行Python代码监测每一行程序的运行时间和空间消耗
2020/04/22 Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
2020/07/01 Python
说出你对remoting 和webservice的理解和应用
2014/06/08 面试题
团队会宣传标语
2014/10/09 职场文书
首次购房证明
2015/06/19 职场文书
堂吉诃德读书笔记
2015/06/30 职场文书
2016大学生求职自荐信范文
2016/01/28 职场文书
HTML CSS 一个标签实现带动画的抖音LOGO
2022/04/26 HTML / CSS