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 相关文章推荐
一页面多XMLHttpRequest对象
Jan 22 Javascript
Js 去掉字符串中的空格(实现代码)
Nov 19 Javascript
jquery插件NProgress.js制作网页加载进度条
Jun 05 Javascript
C++中的string类的用法小结
Aug 07 Javascript
JavaScript+html5 canvas绘制缤纷多彩的三角形效果完整实例
Jan 26 Javascript
AngularJS之ionic 框架下实现 Localstorage本地存储
Apr 22 Javascript
JS+canvas绘制的动态机械表动画效果
Sep 12 Javascript
jquery中attr、prop、data区别与用法分析
Sep 25 jQuery
Vue3 中的数据侦测的实现
Oct 09 Javascript
微信小程序scroll-view锚点链接滚动跳转功能
Dec 12 Javascript
Node.js API详解之 repl模块用法实例分析
May 25 Javascript
JS实现鼠标移动拖尾
Dec 27 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
解析php php_openssl.dll的作用
2013/07/01 PHP
PHP基于简单递归函数求一个数阶乘的方法示例
2017/04/26 PHP
PHP基于新浪IP库获取IP详细地址的方法
2017/05/04 PHP
js数组操作学习总结
2013/11/04 Javascript
基于JQuery实现的图片自动进行缩放和裁剪处理
2014/01/31 Javascript
JQuery遍历DOM节点的方法
2015/06/11 Javascript
js点击文本框后才加载验证码实例代码
2015/10/20 Javascript
JS在onclientclick里如何控制onclick的执行
2016/05/30 Javascript
基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
2016/07/18 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
2016/08/01 Javascript
如何防止INPUT按回车自动提交表单FORM
2016/12/06 Javascript
基于Angularjs+mybatis实现二级评论系统(仿简书)
2017/02/13 Javascript
jquery动态赋值id与动态取id方法示例
2017/08/21 jQuery
Bootstrap栅格系统的使用详解
2017/10/30 Javascript
解决npm安装Electron缓慢网络超时导致失败的问题
2018/02/06 Javascript
vue mounted 调用两次的完美解决办法
2018/10/29 Javascript
NUXT SSR初级入门笔记(小结)
2019/12/16 Javascript
微信小程序如何获取地址
2019/12/24 Javascript
ES6使用 Array.includes 处理多重条件用法实例分析
2020/03/02 Javascript
[01:22:19]EG vs TNC Supermajor小组赛B组败者组第一轮 BO3 第二场 6.2
2018/06/03 DOTA
python中pandas.DataFrame排除特定行方法示例
2017/03/12 Python
浅谈Python处理PDF的方法
2017/11/10 Python
python3 pandas 读取MySQL数据和插入的实例
2018/04/20 Python
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
2018/05/21 Python
Python使用itchat模块实现群聊转发,自动回复功能示例
2019/08/26 Python
通过实例解析Python return运行原理
2020/03/04 Python
python 使用raw socket进行TCP SYN扫描实例
2020/05/05 Python
Python虚拟环境的创建和使用详解
2020/09/07 Python
关于Python字符编码与二进制不得不说的一些事
2020/10/04 Python
关于前端上传文件全面基础扫盲贴(入门)
2019/08/01 HTML / CSS
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
《花的勇气》教后反思
2014/02/12 职场文书
优秀大学生自荐信
2014/06/09 职场文书
公安交警中队队长个人对照检查材料思想汇报
2014/10/05 职场文书
公务员年终个人总结
2015/02/12 职场文书
银行稽核岗位职责
2015/04/13 职场文书