vue 단 추 를 누 르 면 구성 요소 동적 생 성 및 삭제 기능

주요 기능 요구 점:
  • 왼쪽 구성 요소 라 이브 러 리 단 추 를 누 르 면 서로 다른 구성 요 소 를 만 들 고 오른쪽 구역 에 보 여 줍 니 다
  • 오른쪽 에 생 성 된 구성 요소 의 삭제 단 추 를 누 르 면 해당 하 는 구성 요 소 를 삭제 합 니 다4.567917.해당 하 는 구성 요 소 를 삭제 한 후 아래 구성 요소 의 위 치 는 자동 으로 위로 이동 합 니 다효과 그림:

    코드:
    부모 구성 요소 코드(css 스타일 코드 제거):
    
    <template>
     <div class="home">
      <div class="container">
       <div class="addZujian">
        <div>
         <span>   </span>
         <span style="color:#bbb;margin-left:10px;font-size:14px;">    </span>
        </div>
        <div class="zujianBtn" @click="zujian">    1</div>
        <div class="zujianBtn" @click="zujian2">    2</div>
       </div>
       <div class="zujianContent">
        <div>     </div>
        <!-- Vue    component ,           -->
        <!-- component       , :is   ,                -->
        <component
         v-for="(item,index) in comName"
         :is="item.name"
         :key="index"
         @func="getContent(index)"
        ></component>
       </div>
      </div>
     </div>
    </template>
    <script>
    //      
    import zujian1 from "./zujian";
    import zujian2 from "./zujian2";
    export default {
     data() {
      return {
       comName: []
      };
     },
     components: {
      zujian1,
      zujian2
     },
     methods: {
      //     1
      zujian() {
       this.comName.push({
        name: "zujian1"
       });
      },
      //     2
      zujian2() {
       this.comName.push({
        name: "zujian2"
       });
      },
      //     
      getContent(index) {
       this.comName.splice(index, 1);
      }
     }
    };
    </script>
    하위 구성 요소 1 코드(css 스타일 코드 제거):
    
    <template>
     <div class="home">
      <div class="container">
       <span>    1</span>
       <span class="del" @click="del">    </span>
      </div>
     </div>
    </template>
    <script>
    export default {
     data() {
      return {};
     },
     methods: {
      del() {
       //          (        ) -       getContent  
       this.$emit('func','')
      }
     }
    };
    </script>
    하위 구성 요소 2 코드(css 스타일 코드 제거):
    
    <template>
     <div class="home">
      <div class="container">
       <span>    2</span>
       <span class="del" @click="del">    </span>
      </div>
     </div>
    </template>
    <script>
    export default {
     data() {
      return {};
     },
     methods: {
      del() {
       //          (        ) -       getContent  
       this.$emit("func", "");
      }
     }
    };
    </script>
    총결산
    위 에서 말 한 것 은 편집장 이 소개 한 vue 버튼 을 누 르 면 구성 요소 기능 을 동적 으로 만 들 고 삭제 하 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 메 시 지 를 남 겨 주세요.편집장 은 신속하게 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
    만약 당신 이 본문 이 당신 에 게 도움 이 된다 고 생각한다 면,전 재 를 환영 합 니 다.번 거 로 우 시 겠 지만 출처 를 밝 혀 주 십시오.감사합니다!

    좋은 웹페이지 즐겨찾기