vue图片上传本地预览组件使用详解


Posted in Javascript onFebruary 20, 2019

最近项目一直在使用vue,以前只是用vue做过一些简单的demo对数据进行增删改,并没有用于实际开发项目。今天就想了解一下如何用vue实现常见的图片上传前本地预览效果。

效果预览:

vue图片上传本地预览组件使用详解

<template>
 <div class="image-view">
 <div class="addbox">
  <input type="file" @change="getImgBase()">
  <div class="addbtn">+</div>
 </div>
 <div class="view">
  <div class="item" v-for="(item, index) in imgBase64">
  <span class="cancel-btn" @click="delImg(index)">x</span>
  <img :src="item">
  </div>
 </div>
 </div>
</template>
<script>
 export default {
 name: 'imageView',
 data (){
  return {
  imgBase64:[] //存储img base64的值将值传给后端处理
  }
 },
 methods: {
  //获取图片base64实现预览
  getImgBase(){
  var _this = this;
  var event = event || window.event;
  var file = event.target.files[0];
  var reader = new FileReader(); 
  //转base64
  reader.onload = function(e) {
   _this.imgBase64.push(e.target.result);
  }
  reader.readAsDataURL(file);
  },
  //删除图片
  delImg(index){
  this.imgBase64.splice(index,1);
  }
 }
 }
</script>
<style scoped>
 *{margin:0 auto;padding:0;font-family:"微软雅黑";}
 .clearboth::after{
 content:"";
 display:block;
 clear:both;
 }
 .image-view{
 width:400px;
 height:300px;
 margin:50px auto;
 }
 .image-view .addbox{
 float:left;
 position:relative;
 height:100px;
 width:100px;
 margin-bottom:20px;
 text-align:center;
 }
 .image-view .addbox input{
 position:absolute;
 left:0;
 height:100px;
 width:100px;
 opacity:0;
 }
 .image-view .addbox .addbtn{
 float:left;
 height:100px;
 width:100px;
 line-height:100px;
 color:#fff;
 font-size:40px;
 background:#ccc;
 border-radius:10px;
 }
 .image-view .item {
 position:relative;
 float:left;
 height:100px;
 width:100px;
 margin:10px 10px 0 0;
 }
 .image-view .item .cancel-btn{
 position:absolute;
 right:0;
 top:0;
 display:block;
 width:20px;
 height:20px;
 color:#fff;
 line-height:20px;
 text-align:center;
 background:red;
 border-radius:10px;
 cursor:pointer;
 }
 .image-view .item img{
 width:100%;
 height:100%;
 }
 .image-view .view{
 clear:both;
 }
</style>

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

Javascript 相关文章推荐
常见效果实现之返回顶部(结合淡入、淡出、减速滚动)
Jan 04 Javascript
js 获取时间间隔实现代码
May 12 Javascript
详解javascript数组去重问题
Nov 06 Javascript
利用JS生成博文目录及CSS定制博客
Feb 10 Javascript
浅谈JS中的!=、== 、!==、===的用法和区别
Sep 24 Javascript
JS获取子、父、兄节点方法小结
Aug 14 Javascript
基于BootStrap的文本编辑器组件Summernote
Oct 27 Javascript
对vue v-if v-else-if v-else 的简单使用详解
Sep 29 Javascript
vue自定义指令的创建和使用方法实例分析
Dec 04 Javascript
Vue配置marked链接添加target=&quot;_blank&quot;的方法
Jul 19 Javascript
JavaScript实现轮播图片完整代码
Mar 07 Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
Nov 01 Javascript
Vue 后台管理类项目兼容IE9+的方法示例
Feb 20 #Javascript
浅谈小程序 setData学问多
Feb 20 #Javascript
9102年webpack4搭建vue项目的方法步骤
Feb 20 #Javascript
微信小程序五子棋游戏AI实现方法【附demo源码下载】
Feb 20 #Javascript
解决element ui select下拉框不回显数据问题的解决
Feb 20 #Javascript
微信小程序五子棋游戏的悔棋实现方法【附demo源码下载】
Feb 20 #Javascript
Vue.js特性Scoped Slots的浅析
Feb 20 #Javascript
You might like
配置Apache2.2+PHP5+CakePHP1.2+MySQL5运行环境
2009/04/25 PHP
php在服务器执行exec命令失败的解决方法
2012/03/03 PHP
php使用fgetcsv读取csv文件出现乱码的解决方法
2014/11/08 PHP
PHP线程的内存回收问题
2016/07/08 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
2019/03/18 PHP
Jquery动态添加及删除页面节点元素示例代码
2014/06/16 Javascript
transport.js和jquery冲突问题的解决方法
2015/02/10 Javascript
JavaScript中的继承之类继承
2016/05/01 Javascript
JavaScript入门教程之引用类型
2016/05/04 Javascript
nodejs动态创建二维码的方法
2017/08/12 NodeJs
浅谈es6语法 (Proxy和Reflect的对比)
2017/10/24 Javascript
基于Vue实现的多条件筛选功能的详解(类似京东和淘宝功能)
2019/05/07 Javascript
vue实现条件叠加搜索的解决方法
2019/05/28 Javascript
Python提取特定时间段内数据的方法实例
2019/04/01 Python
python实战串口助手_解决8串口多个发送的问题
2019/06/12 Python
HTML 5 input placeholder 属性如何完美兼任ie
2014/05/12 HTML / CSS
全球领先的鞋类零售商:The Walking Company
2016/07/21 全球购物
澳大利亚免息网上购物:Shop Zero
2016/09/17 全球购物
莫斯科绝对前卫最秘密的商店:SVMoscow
2017/10/23 全球购物
澳大利亚小众服装品牌:Maurie & Eve
2018/03/27 全球购物
来自Ocado的宠物商店:Fetch
2018/07/10 全球购物
娇韵诗俄罗斯官方网站:Clarins俄罗斯
2020/10/03 全球购物
Can a struct inherit from another class? (结构体能继承类吗)
2014/07/22 面试题
求职推荐信
2013/10/28 职场文书
七年级历史教学反思
2014/02/05 职场文书
房地产推广策划方案
2014/05/19 职场文书
安全口号大全
2014/06/21 职场文书
工作经常出错的检讨书
2014/09/13 职场文书
向女朋友道歉的话
2015/01/20 职场文书
酒店温馨提示语
2015/07/14 职场文书
关于实现中国梦的心得体会
2016/01/05 职场文书
2016年教师师德师风承诺书
2016/03/25 职场文书
如何使用CocosCreator对象池
2021/04/14 Javascript
golang日志包logger的用法详解
2021/05/05 Golang
Python使用海龟绘图实现贪吃蛇游戏
2021/06/18 Python
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
2021/06/26 Java/Android