当前位置:首页 > VUE

vue实现添加div

2026-01-14 05:26:08VUE

动态添加 div 的方法

模板中使用 v-for 通过数据驱动视图,在模板中使用 v-for 循环渲染多个 div:

vue实现添加div

<template>
  <div v-for="(item, index) in divList" :key="index">
    {{ item.content }}
  </div>
  <button @click="addDiv">添加Div</button>
</template>

<script>
export default {
  data() {
    return {
      divList: []
    }
  },
  methods: {
    addDiv() {
      this.divList.push({ content: `新Div ${this.divList.length + 1}` })
    }
  }
}
</script>

使用 ref 操作 DOM 通过 Vue 的 ref 直接操作 DOM 元素:

vue实现添加div

<template>
  <div ref="container"></div>
  <button @click="appendDiv">添加Div</button>
</template>

<script>
export default {
  methods: {
    appendDiv() {
      const newDiv = document.createElement('div')
      newDiv.textContent = '动态添加的Div'
      this.$refs.container.appendChild(newDiv)
    }
  }
}

使用渲染函数 (render function) 通过 JavaScript 的渲染函数动态创建元素:

<script>
export default {
  data() {
    return {
      divCount: 0
    }
  },
  render(h) {
    const children = []
    for (let i = 0; i < this.divCount; i++) {
      children.push(h('div', `Div ${i + 1}`))
    }
    return h('div', [
      ...children,
      h('button', {
        on: {
          click: () => this.divCount++
        }
      }, '添加Div')
    ])
  }
}
</script>

注意事项

  • 使用 v-for 时需为每个项添加唯一的 key
  • 直接操作 DOM 可能违反 Vue 的数据驱动原则
  • 动态添加的元素同样受 Vue 响应式系统管理
  • 复杂场景建议使用组件化方式实现

以上方法可根据具体需求选择,数据量较大时推荐使用 v-for 方式,需要精细控制 DOM 时可采用 ref 或渲染函数。

标签: vuediv
分享给朋友:

相关文章

computed vue 实现

computed vue 实现

computed 在 Vue 中的基本用法 Vue 的 computed 属性用于声明依赖于其他数据的计算属性。当依赖的数据变化时,计算属性会自动重新计算并缓存结果。 export defaul…

vue实现hovuer

vue实现hovuer

Vue 实现 Hover 效果 在 Vue 中实现 hover 效果可以通过多种方式完成,以下是几种常见的方法: 使用 CSS 直接控制 通过 :hover 伪类实现,无需额外的 JavaScrip…

vue toast实现

vue toast实现

Vue Toast 实现方法 使用第三方库(推荐) 安装 vue-toastification 库,这是一个功能丰富且轻量级的 Vue Toast 插件。 npm install vue-toast…

vue实现CRUD

vue实现CRUD

Vue 实现 CRUD 操作 Vue 提供了响应式数据绑定和组件化开发能力,结合后端 API 可以轻松实现 CRUD(增删改查)功能。以下是基于 Vue 3 和 Axios 的完整实现方案。 安装依…

vue实现type切换

vue实现type切换

Vue 实现 Type 切换的实现方法 在 Vue 中实现 Type 切换功能可以通过动态组件、条件渲染或路由切换等方式实现。以下是几种常见方法: 使用 v-if 或 v-show 条件渲染 通过绑…

vue实现精准查询

vue实现精准查询

实现精准查询的方法 在Vue中实现精准查询通常需要结合输入框、数据处理和筛选逻辑。以下是几种常见的方法: 使用计算属性进行筛选 计算属性适合对数据进行实时筛选,响应输入框的变化: <tem…