当前位置: 首页 > news >正文

vue3实现vuedraggable实现拖拽到垃圾桶图标位置进行删除

当使用Vue 3和vuedraggable库时,你可以按照以下方式实现拖拽到垃圾桶图标位置进行删除的功能:

首先,确保你已经安装了vuedraggable库。如果没有安装,可以通过以下命令进行安装:

vuedraggable  和vue-draggable-plus使用非常类似,你可以自己选择安装哪种。

vue-draggable-plus中文文档参考:

https://vue-draggable-plus.pages.dev/guide/

1、安装:

npm install vue-draggable-plus

2、引入

import { VueDraggable } from "vue-draggable-plus";

3、使用

在这个示例中:

  1. 使用了Vue 3的ref来创建items的响应式数据。
  2. 使用setup函数来设置itemsonDragEnddeleteItem等函数。
  3. 使用draggable组件来实现拖拽功能,绑定了items数据。
  4. 在拖拽结束时,会触发onDragEnd函数,你可以在这里处理拖拽结束的逻辑。
  5. 垃圾桶图标位置的<div>元素设置了@dragover.prevent@drop="deleteItem"事件,当拖拽到该位置时,会触发deleteItem函数来删除对应的项。
  6. deleteItem函数中,根据拖拽的数据项的id来过滤掉对应的项,实现删除功能。
<template><div><draggable v-model="items" @end="onDragEnd"><div v-for="item in items" :key="item.id" class="draggable-item">{{ item.text }}</div></draggable><div class="trash-can" @dragover.prevent @drop="deleteItem">🗑️ Drag Here to Delete</div></div>
</template><script>
import { ref } from 'vue';
import draggable from 'vuedraggable';export default {components: {draggable},setup() {const items = ref([{ id: 1, text: 'Item 1' },{ id: 2, text: 'Item 2' },{ id: 3, text: 'Item 3' },{ id: 4, text: 'Item 4' }]);const onDragEnd = (event) => {// 拖拽结束时的逻辑};const deleteItem = (event) => {const itemId = event.dataTransfer.getData('text/plain');items.value = items.value.filter(item => item.id.toString() !== itemId);};return {items,onDragEnd,deleteItem};}
};
</script><style>
.trash-can {border: 2px dashed #ccc;padding: 20px;margin-top: 20px;text-align: center;cursor: pointer;
}
</style>

http://www.lryc.cn/news/398059.html

相关文章:

  • MySQL向自增列插入0失败问题
  • Python:Python基础知识(注释、命名、数据类型、运算符)
  • Protobuf: 大数据开发中的高效数据传输利器
  • MySQL 面试相关问题
  • java org.aeonbits.owner库介绍
  • YOLOv10改进 | 添加注意力机制篇 | 添加LSKAttention大核注意力机制助力极限涨点
  • 学习笔记——动态路由——IS-IS中间系统到中间系统(特性之路由撤销)
  • 智能无人机控制:STM32微控制器与机器学习集成(内附资料)
  • 力扣 454四数相加
  • Java面试题系列 - 第9天
  • 数据结构【顺序表】
  • 【JavaScript 报错】未捕获的类型错误:Uncaught TypeError
  • html+css+js随机验证码
  • WPS打开PDF文件的目录
  • 常见 Web漏洞分析与防范研究
  • 暗黑魅力:Xcode全面拥抱应用暗黑模式开发指南
  • 【游戏引擎之路】登神长阶(七)——x86汇编学习:凡做难事,必有所得
  • 在 Windows 平台搭建 MQTT 服务
  • jdevelope安装
  • 排序(一)——冒泡排序、直接插入排序、希尔排序(BubbleSOrt,InsertSort,ShellSort)
  • synchronized关键字详解(全面分析)
  • 数据建设实践之大数据平台(三)
  • TypeScript中的交叉类型
  • CNN -1 神经网络-概述2
  • 利用js实现图片压缩功能
  • 2024.7.10 刷题总结
  • ES6 async 函数详解 (十)
  • 【安全设备】入侵检测
  • 07浅谈大语言模型可调节参数tempreture
  • Redis数据同步