vue图片上传本地预览组件使用详解
更新时间:2019年02月20日 16:23:44 作者:codingNoob
这篇文章主要为大家详细介绍了vue图片上传本地预览组件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
最近项目一直在使用vue,以前只是用vue做过一些简单的demo对数据进行增删改,并没有用于实际开发项目。今天就想了解一下如何用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>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
使用VUE+SpringBoot+EasyExcel 整合导入导出数据的教程详解
这篇文章主要介绍了使用VUE+SpringBoot+EasyExcel 整合导入导出数据的过程详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-05-05
vue3使用useMouseInElement实现图片局部放大预览效果实例代码
现在很多的项目里面图片展示缩略图,然后点击实现图片预览,放大的功能,下面这篇文章主要给大家介绍了关于vue3使用useMouseInElement实现图片局部放大预览效果的相关资料,需要的朋友可以参考下2023-03-03
详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持
本篇文章主要介绍了详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持,非常具有实用价值,需要的朋友可以参考下2017-10-10
vue基础之使用get、post、jsonp实现交互功能示例
这篇文章主要介绍了vue基础之使用get、post、jsonp实现交互功能,结合实例形式分析了vue.js中get、post及jsonp针对本地文件、网络接口实现交互功能相关操作技巧,需要的朋友可以参考下2019-03-03
关于vue二进制转图片显示问题 后端返回的是byte[]数组
这篇文章主要介绍了关于vue二进制转图片显示问题 后端返回的是byte[]数组,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-06-06


最新评论