当前位置:首页 > VUE

vue实现增删

2026-03-27 21:34:15VUE

Vue 实现增删功能

数据绑定与列表渲染

在 Vue 中,通过 v-for 指令可以动态渲染列表数据。首先需要定义一个数组来存储数据,并在模板中使用 v-for 循环展示。

<template>
  <div>
    <ul>
      <li v-for="(item, index) in items" :key="index">
        {{ item.name }}
        <button @click="deleteItem(index)">删除</button>
      </li>
    </ul>
    <input v-model="newItem" placeholder="输入新增项">
    <button @click="addItem">新增</button>
  </div>
</template>

新增功能实现

新增功能通过 v-model 绑定输入框的值,并在点击按钮时调用方法将新数据添加到数组中。

<script>
export default {
  data() {
    return {
      items: [
        { name: '项目1' },
        { name: '项目2' }
      ],
      newItem: ''
    };
  },
  methods: {
    addItem() {
      if (this.newItem.trim() === '') return;
      this.items.push({ name: this.newItem });
      this.newItem = '';
    }
  }
};
</script>

删除功能实现

删除功能通过传递索引或唯一标识,使用数组的 splice 方法或 filter 方法移除指定项。

methods: {
  deleteItem(index) {
    this.items.splice(index, 1);
  }
}

使用唯一标识优化

在实际项目中,建议为每一项分配唯一标识(如 id),避免直接使用索引作为 key,以提高渲染性能和数据一致性。

vue实现增删

data() {
  return {
    items: [
      { id: 1, name: '项目1' },
      { id: 2, name: '项目2' }
    ],
    newItem: ''
  };
},
methods: {
  deleteItem(id) {
    this.items = this.items.filter(item => item.id !== id);
  }
}

注意事项

  • 响应式更新:Vue 的数组更新需要通过特定方法(如 pushsplice)或使用 Vue.set 确保响应式触发。
  • 表单验证:新增时应对输入内容做非空校验或其他业务逻辑校验。
  • 性能优化:列表数据较多时,可使用虚拟滚动(如 vue-virtual-scroller)提升性能。

标签: vue
分享给朋友:

相关文章

vue实现下拉刷新组件

vue实现下拉刷新组件

实现下拉刷新组件的核心思路 下拉刷新功能通常通过监听触摸事件、滚动位置和动画效果实现。Vue中可以利用自定义指令或封装组件完成,以下为两种常见实现方式。 基于自定义指令的实现 创建指令监听触摸事件,…

vue环境实现

vue环境实现

Vue 环境搭建 安装 Node.js 和 npm Node.js 是运行 Vue 的基础环境,npm 是包管理工具。从 Node.js 官网 下载并安装最新稳定版本。安装完成后,在终端运行以下命令验…

vue实现系统

vue实现系统

Vue 实现系统的核心方法 使用 Vue.js 构建系统时,需结合其响应式特性与组件化开发模式。以下为关键实现路径: 项目初始化与工程配置 通过 Vue CLI 或 Vite 创建项目骨架,推荐选择…

vue 实现报价

vue 实现报价

Vue 实现报价功能 在 Vue 中实现报价功能通常涉及前端表单交互、数据计算和与后端 API 的通信。以下是实现报价功能的几种常见方法: 表单设计与数据绑定 使用 Vue 的 v-model 指…

vue 实现vshow

vue 实现vshow

Vue 实现 v-show 在 Vue 中,v-show 是一个常用的指令,用于根据条件控制元素的显示或隐藏。与 v-if 不同,v-show 不会移除 DOM 元素,而是通过 CSS 的 displ…

vue滑块实现

vue滑块实现

Vue滑块实现方法 使用原生HTML5 range input Vue中可以绑定原生HTML5的range类型input元素实现基础滑块功能: <template> <div&…