当前位置:首页 > VUE

vue实现增删

2026-01-08 00:26:21VUE

Vue 实现增删功能

在 Vue 中实现增删功能通常涉及数据绑定、事件处理和列表渲染。以下是基于 Vue 2 或 Vue 3 的实现方法:

数据定义

初始化一个数组用于存储列表数据,并在 Vue 实例的 data 中声明:

data() {
  return {
    items: [
      { id: 1, name: 'Item 1' },
      { id: 2, name: 'Item 2' }
    ],
    newItemName: ''
  }
}

添加功能

通过输入框绑定 newItemName,点击按钮触发添加方法:

methods: {
  addItem() {
    if (this.newItemName.trim()) {
      this.items.push({
        id: Date.now(), // 生成唯一 ID
        name: this.newItemName
      });
      this.newItemName = ''; // 清空输入框
    }
  }
}

模板部分:

<input v-model="newItemName" placeholder="输入新项名称">
<button @click="addItem">添加</button>

删除功能

通过索引或唯一标识(如 id)删除指定项:

methods: {
  deleteItem(id) {
    this.items = this.items.filter(item => item.id !== id);
  }
}

模板中使用 v-for 渲染列表,并为每项绑定删除事件:

<ul>
  <li v-for="item in items" :key="item.id">
    {{ item.name }}
    <button @click="deleteItem(item.id)">删除</button>
  </li>
</ul>

关键点说明

  1. 唯一标识:建议为每项分配唯一 id(如 Date.now()),避免直接使用索引删除可能导致的渲染问题。
  2. 数组更新:Vue 能检测到数组的变更方法(如 pushfilter),但直接通过索引修改项(如 this.items[0] = newValue)需使用 Vue.set
  3. Vue 3 差异:若使用 Vue 3,组合式 API 的写法如下:
    import { ref } from 'vue';
    const items = ref([...]);
    const newItemName = ref('');

完整示例可参考 Vue 官方文档的列表渲染事件处理部分。

vue实现增删

标签: vue
分享给朋友:

相关文章

vue公共列表的实现

vue公共列表的实现

实现 Vue 公共列表组件 公共列表组件通常用于展示重复结构的数据,例如商品列表、用户列表等。以下是一个典型的实现方式: 基础实现 创建可复用的列表组件 List.vue: <tem…

vue实现视窗

vue实现视窗

Vue 实现视窗功能 在 Vue 中实现视窗功能通常涉及监听浏览器窗口大小变化、响应式布局或创建自定义弹窗组件。以下是几种常见实现方式: 监听浏览器窗口大小变化 使用 Vue 的 mounted 和…

vue筛选实现

vue筛选实现

Vue 筛选实现方法 使用计算属性实现筛选 计算属性是 Vue 中实现数据筛选的常用方式。通过定义一个计算属性,可以根据输入的条件动态过滤数据。 <template> <di…

vue 组件实现

vue 组件实现

Vue 组件实现方法 单文件组件 (SFC) 使用 .vue 文件格式,包含模板、脚本和样式三部分: <template> <div class="example">{{…

vue实现日历

vue实现日历

Vue 实现日历的基本方法 使用 Vue 实现日历可以通过自定义组件或借助第三方库完成。以下是两种常见实现方式: 自定义日历组件 创建基于 Vue 的日历组件需要处理日期计算和渲染逻辑。核心是生成当…

vue 菜单实现

vue 菜单实现

Vue 菜单实现方法 在Vue中实现菜单功能可以通过多种方式完成,以下是几种常见的实现方法: 使用v-for动态生成菜单 通过数据驱动的方式动态渲染菜单项,适合菜单内容可能变化的场景: <…