vue element upload实现图片本地预览


Posted in Javascript onAugust 20, 2019

vue使用element实现本地预览,最主要的是将图片路径转换为base64,供大家参考,具体内容如下

HTML

<el-upload
 class="avatar-uploader"
 action="123" //这个路径不重要,可以随便写
 :show-file-list="false"
 :on-success="handleAvatarSuccess"
 :on-change="onchange"
 :before-upload="beforeAvatarUpload">
 <img v-if="imageUrl" :src="imageUrl" class="avatar">
 <i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>

js部分

<script>
 export default {
  data() {
   return {
    imageUrl: '',
   };
  },
  methods: {
   handleAvatarSuccess(res, file) {
    this.imageUrl = URL.createObjectURL(file.raw);
   },
   beforeAvatarUpload(file) {
    const isJPG = file.type === 'image/jpeg';
    const isLt2M = file.size / 1024 / 1024 < 2;

    if (!isJPG) {
     this.$message.error('上传头像图片只能是 JPG 格式!');
    }
    if (!isLt2M) {
     this.$message.error('上传头像图片大小不能超过 2MB!');
    }
    return isJPG && isLt2M;
   },
   //当上传图片后,调用onchange方法,获取图片本地路径
   onchange(file,fileList){
     var _this = this;
        var event = event || window.event;
        var file = event.target.files[0];
        var reader = new FileReader(); 
        //转base64
        reader.onload = function(e) {
         _this.imageUrl = e.target.result //将图片路径赋值给src
        }
        reader.readAsDataURL(file);
   }
  }
 }
</script>

现在就可实现图片本地预览了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
控制打印时页眉角的代码
Feb 08 Javascript
起点页面传值js,有空研究学习下
Jan 25 Javascript
Array的push与unshift方法性能比较分析
Mar 05 Javascript
网页广告中JS代码的信息监听示例
Apr 02 Javascript
JS修改地址栏参数实例代码
Jun 14 Javascript
jQuery实现的跨容器无缝拖动效果代码
Jun 21 Javascript
javascript数组对象常用api函数小结(连接,插入,删除,反转,排序等)
Sep 20 Javascript
js简单实现网页换肤功能
Apr 07 Javascript
利用JS做网页特效_大图轮播(实例讲解)
Aug 09 Javascript
基于Vue自定义指令实现按钮级权限控制思路详解
May 23 Javascript
angular 数据绑定之[]和{{}}的区别
Sep 25 Javascript
vue随机验证码组件的封装实现
Feb 19 Javascript
JS中的算法与数据结构之集合(Set)实例详解
Aug 20 #Javascript
Vue + Element UI图片上传控件使用详解
Aug 20 #Javascript
微信小程序项目总结之记账小程序功能的实现(包括后端)
Aug 20 #Javascript
ES6中Symbol、Set和Map用法详解
Aug 20 #Javascript
Vue+Element UI+vue-quill-editor富文本编辑器及插入图片自定义
Aug 20 #Javascript
node中使用log4js4.x版本记录日志的方法
Aug 20 #Javascript
vue 获取视频时长的实例代码
Aug 20 #Javascript
You might like
Terran历史背景
2020/03/14 星际争霸
PHP 5.3.0 安装分析心得
2009/08/07 PHP
PHP 学习路线与时间表
2010/02/21 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(一)
2014/06/23 PHP
PHP自带函数给数字或字符串自动补齐位数
2014/07/29 PHP
ThinkPHP基本的增删查改操作实例教程
2014/08/22 PHP
php HTML无刷新提交表单
2016/04/05 PHP
php从身份证获取性别和出生年月
2017/02/09 PHP
thinkphp5实现微信扫码支付
2019/12/23 PHP
js事件(Event)知识整理
2012/10/11 Javascript
js网页实时倒计时精确到秒级
2014/02/10 Javascript
使用JQ来编写最基本的淡入淡出效果附演示动画
2014/10/31 Javascript
JavaScript实现动态添加,删除行的方法实例详解
2015/07/02 Javascript
JQuery 进入页面默认给已赋值的复选框打钩
2017/03/23 jQuery
Bootstrap Table使用整理(四)之工具栏
2017/06/09 Javascript
详解vue-router 初始化时做了什么
2018/06/11 Javascript
angular4自定义表单控件[(ngModel)]的实现
2018/11/23 Javascript
JS实现获取当前所在周的周六、周日示例分析
2019/05/11 Javascript
vue.js中导出Excel表格的案例分析
2019/06/11 Javascript
Vue程序调试的方法
2019/06/17 Javascript
layui添加动态菜单与选项卡
2019/07/26 Javascript
解决vue项目打包上服务器显示404错误,本地没出错的问题
2020/11/03 Javascript
Python中的Matplotlib模块入门教程
2015/04/15 Python
使用python加密自己的密码
2015/08/04 Python
Python set常用操作函数集锦
2017/11/15 Python
浅谈Django中的数据库模型类-models.py(一对一的关系)
2018/05/30 Python
如何用python批量调整视频声音
2020/12/22 Python
世界最大域名注册商:GoDaddy
2016/07/24 全球购物
英国著名的小众美容品牌网站:Alyaka
2017/08/08 全球购物
采用怎样的方法保证数据的完整性
2013/12/02 面试题
商务英语毕业生自荐信范文
2013/11/08 职场文书
大三毕业自我鉴定
2014/01/15 职场文书
开票员岗位职责
2015/02/12 职场文书
素质教育培训心得体会
2016/01/19 职场文书
HTML+css盒子模型案例(圆,半圆等)“border-radius” 简单易上手
2021/05/10 HTML / CSS
pytorch中Schedule与warmup_steps的用法说明
2021/05/24 Python