javascript - 如何在 vue.js 中复制我的组件?

标签 javascript vue.js

<template>
  <!--This is my main file -->
  <div id="inputs">
    <h1>언어 관리</h1>
    <v-btn color="primary" elevation="10" large @click="duplicateEl"
      >Add row</v-btn
    >
    <Contents />
  </div>
</template>
<script>
import Contents from "./Contents.vue";
export default {
  name: "LanguageMainMenu",
  components: { Contents },
  methods: {
    duplicateEl() {
      alert("You can duplicate buttons");
    },
  },
};
</script>
<style>
h1 {
  text-align: center;
  font-size: 38px;
  padding-top: 20px;
  margin: auto;
}
</style>

最佳答案

最好的方法是使用v-for内部的组件。

单击按钮时增加索引。

不要忘记在v-for中使用key

工作 fiddle

var example1 = new Vue({
  el: '#app',
  name: "LanguageMainMenu",
  components: {
    Contents: {
      template: `<div>Contents Component</div>`,
    }
  },
  data() {
    return {
      totalCount: 1,
    }
  },
  methods: {
    duplicateEl() {
      this.totalCount++;
    }
  },
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.4/vue.js"></script>
<div id="app">
    <!--This is my main file -->
    <div id="inputs">
      <h1>언어 관리</h1>
      <button @click="duplicateEl">Add row</button>
      <Contents v-for="count in totalCount" :key="`component-${count}`" />
    </div>
</div>

关于javascript - 如何在 vue.js 中复制我的组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70617366/

相关文章:

javascript - !~myVar 是做什么的?

javascript - 如果 iframe 已加载,则确认何时选择更改

javascript - 如何在 Yii2 Asset Bundle 中使用 JSX 文件

javascript - 缩放 html Canvas

javascript - 鼠标悬停或悬停 vue.js

javascript - Jquery 未使用自定义按钮提交表单

javascript - 调用返回多个值的函数

vue.js - 以编程方式为 VueJS 中的动态组件绑定(bind)自定义事件

javascript - 如何在 vuejs 中验证电子邮件?

javascript - Rails vue.js 深度嵌套(属性的属性)