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 相关文章推荐
JavaScript Sort 表格排序
Oct 31 Javascript
复制小说文本时出现的随机乱码的去除方法
Sep 07 Javascript
javascript获取web应用根目录的方法
Feb 12 Javascript
node.js中的fs.realpathSync方法使用说明
Dec 16 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
Aug 19 Javascript
JS密码生成与强度检测完整实例(附demo源码下载)
Apr 06 Javascript
js实现的页面加载完毕之前loading提示效果完整示例【附demo源码下载】
Aug 02 Javascript
jQuery Jsonp跨域模拟搜索引擎
Jun 17 jQuery
node.js基于fs模块对系统文件及目录进行读写操作的方法详解
Nov 10 Javascript
详解Vue中的Props与Data细微差别
Mar 02 Javascript
详解JavaScript数据类型和判断方法
Sep 04 Javascript
js实现菜单跳转效果
Dec 11 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项目打包方法
2008/02/18 PHP
php PDO中文乱码解决办法
2009/07/20 PHP
PHP验证码生成原理和实现
2016/01/24 PHP
Laravel 使用查询构造器配合原生sql语句查询的例子
2019/10/12 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
jQuery遍历DOM的父级元素、子级元素和同级元素的方法总结
2016/07/07 Javascript
jQuery实现的超链接提示效果示例【附demo源码下载】
2016/09/09 Javascript
微信小程序 图片边框解决方法
2017/01/16 Javascript
JavaScript实现时钟滴答声效果
2017/01/29 Javascript
JS动态生成年份和月份实例代码
2017/02/04 Javascript
详解Javascript百度地图接口开发文档中的类和方法
2017/02/07 Javascript
ES6正则的扩展实例详解
2017/04/25 Javascript
vue.js 初体验之Chrome 插件开发实录
2017/05/13 Javascript
在vue中封装可复用的组件方法
2018/03/01 Javascript
解决vue单页使用keep-alive页面返回不刷新的问题
2018/03/13 Javascript
原生JS检测CSS3动画是否结束的方法详解
2019/01/27 Javascript
Vue 根据条件判断van-tab的显示方式
2020/08/03 Javascript
vue在图片上传的时候压缩图片
2020/11/18 Vue.js
Python获取DLL和EXE文件版本号的方法
2015/03/10 Python
简单学习Python time模块
2016/04/29 Python
深入理解NumPy简明教程---数组2
2016/12/17 Python
使用Python生成XML的方法实例
2017/03/21 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
2017/08/07 Python
python3实现zabbix告警推送钉钉的示例
2019/02/20 Python
关于Python3 类方法、静态方法新解
2019/08/30 Python
python selenium实现发送带附件的邮件代码实例
2019/12/10 Python
TensorFlow——Checkpoint为模型添加检查点的实例
2020/01/21 Python
解决Jupyter无法导入已安装的 module问题
2020/04/17 Python
python字典与json转换的方法总结
2020/12/28 Python
俄罗斯购买内衣网站:Trusiki
2020/08/22 全球购物
医学护理系毕业生求职信
2013/10/01 职场文书
前台接待岗位职责
2013/12/03 职场文书
毕业大学生自荐信
2014/06/17 职场文书
班组长安全工作职责
2014/07/15 职场文书
毕业设计致谢语
2015/05/14 职场文书
Python 数据可视化之Matplotlib详解
2021/11/02 Python