当前位置:首页 > VUE

vue实现书籍添加删除

2026-02-25 04:04:23VUE

实现书籍添加删除功能

在Vue中实现书籍的添加和删除功能,可以通过以下步骤完成。假设使用Vue 3的Composition API和<script setup>语法。

数据定义

定义一个响应式数组来存储书籍数据:

vue实现书籍添加删除

import { ref } from 'vue'

const books = ref([
  { id: 1, title: 'Vue 3入门', author: '张三' },
  { id: 2, title: 'JavaScript高级编程', author: '李四' }
])

const newBook = ref({
  title: '',
  author: ''
})

添加书籍功能

创建一个方法来添加新书籍:

const addBook = () => {
  if (newBook.value.title && newBook.value.author) {
    books.value.push({
      id: Date.now(),
      title: newBook.value.title,
      author: newBook.value.author
    })
    newBook.value.title = ''
    newBook.value.author = ''
  }
}

删除书籍功能

根据书籍ID删除指定书籍:

vue实现书籍添加删除

const deleteBook = (id) => {
  books.value = books.value.filter(book => book.id !== id)
}

模板部分

<template>
  <div>
    <h2>书籍列表</h2>
    <ul>
      <li v-for="book in books" :key="book.id">
        {{ book.title }} - {{ book.author }}
        <button @click="deleteBook(book.id)">删除</button>
      </li>
    </ul>

    <h2>添加新书</h2>
    <form @submit.prevent="addBook">
      <input v-model="newBook.title" placeholder="书名">
      <input v-model="newBook.author" placeholder="作者">
      <button type="submit">添加</button>
    </form>
  </div>
</template>

样式优化

可以添加一些基本样式改善用户体验:

ul {
  list-style: none;
  padding: 0;
}

li {
  margin: 10px 0;
  padding: 10px;
  border: 1px solid #ddd;
  display: flex;
  justify-content: space-between;
}

button {
  margin-left: 10px;
  cursor: pointer;
}

input {
  margin-right: 10px;
  padding: 5px;
}

功能扩展

如果需要更复杂的功能,可以考虑:

  • 添加编辑功能
  • 实现本地存储持久化
  • 添加表单验证
  • 使用Pinia进行状态管理

这个实现提供了基本的书籍添加和删除功能,可以根据实际需求进一步扩展和完善。

标签: 书籍vue
分享给朋友:

相关文章

vue实现字母添加排序

vue实现字母添加排序

实现字母添加排序的方法 在Vue中实现字母添加排序功能,可以通过以下步骤完成: 创建Vue实例并定义数据 new Vue({ el: '#app', data: { letters…

vue实现visual

vue实现visual

Vue 实现可视化(Visual)的常见方法 在 Vue 中实现可视化通常涉及数据可视化库的集成,以下是几种主流方案: 使用 ECharts ECharts 是一个强大的 JavaScript 图表…

vue能实现

vue能实现

Vue.js 是一个流行的前端框架,能够实现多种功能。以下是 Vue 能够实现的主要功能和特性: 响应式数据绑定 Vue 的核心特性之一是响应式数据绑定。通过数据驱动视图,当数据发生变化时,视图会自…

vue实现popup

vue实现popup

Vue 实现 Popup 弹窗 使用 Vue 原生组件 创建一个基本的 Vue 组件作为弹窗,通过 v-if 或 v-show 控制显示隐藏。 <template> <div&…

vue 实现搜索

vue 实现搜索

实现 Vue 搜索功能 在 Vue 中实现搜索功能通常涉及以下几个关键步骤: 数据绑定与输入监听 使用 v-model 双向绑定搜索输入框的值,监听用户输入: <template>…

vue toast实现

vue toast实现

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