Vue implements adding, displaying and deleting multiple images

Vue implements adding, displaying and deleting multiple images

This article shares the specific code for Vue to add, display and delete multiple images for your reference. The specific content is as follows

Effect picture:

First, give an input[type="file"] and then hide it. When you click the area where the plus sign is located, the click event for file selection is triggered.

Note: When getting the value of src, use v-bind:src="imgsrc"; using src="imgsrc" or src="{{imgsrc}}" will result in an error.

Code: (some styles omitted, mainly adding and deleting methods)

<template>
 <div id="originality">
    <div class="ipt">Main image:</div>
    <div class="picture">
     <div class="Mainpicture">
      <div class="iconfont icon-jia" @click="uploadPic('filed')"></div>
     </div>
     <!--You can add multiple pictures to the main picture-->
     <div id="img" v-for="(imgsrc,index) in imgsrcs">
      <img id="imgshow" :src="imgsrc">
      <div class="iconfont icon-cha" @click="deleteMulPic(index)"</div>
     </div>
    </div>
    <input id="filed" type="file" multiple="multiple" accept="image/*,application/pdf" style="display: none;" @change="changeMulPic()">
 
    
 </div>
</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>

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • Vue click button to dynamically create and delete component functions
  • Detailed explanation of how to add and delete elements in Vue
  • Vue implements delete element of deleted object
  • Summary of common ways to click and delete in Vue

<<:  How to install mysql5.7.24 binary version on Centos 7 and how to solve it

>>:  Solution to the problem that Docker container cannot be stopped or killed

Recommend

Detailed description of the function of new in JS

Table of contents 1. Example 2. Create 100 soldie...

Vue keeps the user logged in (various token storage methods)

Table of contents How to set cookies Disadvantage...

Zookeeper stand-alone environment and cluster environment construction

1. Single machine environment construction# 1.1 D...

How to control the proportion of Flex child elements on the main axis

background Flex layout achieves alignment and spa...

Native JS to implement login box email prompt

This article shares a native JS implementation of...

Docker nginx implements one host to deploy multiple sites

The virtual machine I rented from a certain site ...

Summary of pitfalls in virtualbox centos7 nat+host-only networking

Table of contents 1. Problem Background 2. What a...

Detailed explanation of BOM and DOM in JavaScript

Table of contents BOM (Browser Object Model) 1. W...

JS array deduplication details

Table of contents 1 Test Cases 2 JS array dedupli...

JavaScript clicks the button to generate a 4-digit random verification code

This article example shares the specific code of ...

JavaScript function call classic example code

Table of contents JavaScript function call classi...

Creating private members in JavaScript

Table of contents 1. Use closures 2. Use ES6 clas...