vue怎么在中间加图片(Vue实现多图添加显示和删除)
类别:编程学习 浏览量:2379
时间:2022-01-23 02:09:10 vue怎么在中间加图片
Vue实现多图添加显示和删除本文实例为大家分享了Vue实现多图添加显示和删除的具体代码,供大家参考,具体内容如下
效果图:
首先给一个input[type="file"],然后隐藏掉,当点击加号所在的区域时,触发文件选择的点击事件。
注意:取src的值时用v-bind:src="imgsrc";用src="imgsrc"或者src="{{imgsrc}}"会报错。
代码:(有些样式省略,主要是添加和删除方法)
<template> <li id="originality"> <li class="ipt">主图:</li> <li class="picture"> <li class="Mainpicture"> <li class="iconfont icon-jia" @click="uploadPic('filed')"></li> </li> <!--主图可以添加多个图片--> <li id="img" v-for="(imgsrc,index) in imgsrcs"> <img id="imgshow" :src="imgsrc"> <li class="iconfont icon-cha" @click="deleteMulPic(index)"</li> </li> </li> <input id="filed" type="file" multiple="multiple" accept="image/*,application/pdf" style="display: none;" @change="changeMulPic()"> </li> </template> <script> export default { name: "originality", components: { }, data() { return { imgsrcs: [] } }, methods: { uploadPic: function(val) { document.getElementById(val).click(); }, changeMulPic: function() { var file = $("#filed").get(0).files[0]; $("#img").show(); this.imgsrcs.push(window.URL.createObjectURL(file)) }, deleteMulPic: function(index) { this.imgsrcs.splice(index, 1); } } } </script> <style scoped> .Mainpicture { float: left; width: 100px; height: 100px; background: rgba(255, 255, 255, 1); border-radius: 2px; border: 1px solid #E5E9F2; } .picture { min-height: 100px; } .files { display: none; float: left; } #img { margin-left: 20px; float: left; width: 100px; height: 100px; border-radius: 2px; border: 1px solid #E5E9F2; } .icon-cha { cursor: pointer; position: absolute; width: 10px; height: 10px; margin-left: 85px; margin-top: -100px; color: #BFC5D1; } #imgshow { width: 100px; height: 100px; } .icon-jia { text-align: center; width: 20px; height: 20px; line-height: 20px; color: #BFC5D1; padding: 40px; cursor: pointer; } </style>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。
您可能感兴趣
- vue浏览pdf文件(如何在vue中使用pdfjs预览pdf文件)
- vue设置div大小(Vue实现div滚轮放大缩小)
- vuefor指令使用教程(Vue必学知识点之forEach的使用)
- vue监控对象变化(Vue之监听方法案例详解)
- vue和springboot分页开发实现(解决Vue+SpringBoot+Shiro跨域问题)
- vuejs图片缩放裁切(vue+js点击箭头实现图片切换)
- vue动态路由实现权限控制(vue2/vue3路由权限管理的方法实例)
- uniapp使用vue写页面(分析uniapp入门之nvue爬坑记)
- vuejs指令解析(Vue.js中的计算属性、监视属性与生命周期详解)
- vue3.0 自定义组件(Vue 3.0自定义指令的使用入门)
- vue 网页打印(vue打印功能实现的两种方法总结)
- vue滑动切换页面(vue实现点击翻转效果)
- vue插槽的分类(vue具名插槽的基本使用实例)
- vue原样表格导出excel(Vue导出Excel功能的全过程记录)
- vue过滤器使用思路(vue 过滤器和自定义指令的使用)
- 小白vue教学(尤大大新活petite-vue的实现)
- 写信告诉我今天海是什么颜色(写信告诉我今天海是什么颜色回答)
- 英语难学吗(法语比英语难学吗)
- 今天要吃什么(今天要吃什么菜好)
- 网红直播可以赚很多钱吗(网红直播可以赚很多钱吗)
- 今天是什么日子(今天是什么日子有什么特殊意义吗)
- 这里输入关键词(怎么输入关键词搜索)
热门推荐
- python响应处理post请求(Python3模拟curl发送post请求操作示例)
- linux后台运行程序的命令(在后台运行Linux命令的方法)
- requests使用自定义cookie(Yii框架中用response保存cookie,用request读取cookie的原理解析)
- easyui combobox级联
- idea的tomcat怎么关闭(解决Idea的tomcat启动报多个listener的错误问题)
- canvas绘制渐变图形(Canvas实现放大镜效果完整案例分析附代码)
- linux虚拟内存实现需要哪六种机制(解析Linux高性能网络IO和Reactor模型)
- css导航栏字怎么分开设置(纯CSS实现导航栏Tab切换效果)
- sqlserver复制表结构及数据到新表(SQL SERVER 表与表之间 字段一对多sql语句写法)
- nginx 可以部署java吗(Java-利用Nginx负载均衡实现Web服务器)