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

SortableItem拖拽组件里的Popconfirm失效

1. 场景:umi3升级umi4后,出现这个问题,Popconfirm不生效,在SortableItem/拖拽组件里

2. 原因:

     Popconfirm 不起作用的原因是由于 react-sortable-hoc 库与 Popconfirm 组件之间的事件冲突。在 SortableElement 中,拖拽功能会拦截掉一些鼠标事件,导致 Popconfirm 无法正常触发。这是 react-sortable-hoc 的一个常见问题。

3. 解决:

    添加移动手柄,修改了移动区域,不再覆盖Popconfirm区域,Popconfirm正常使用

  • 只有拖拽把手(左侧 icon)区能拖拽,其他区域只响应正常点击,Popconfirm等弹窗控件都可以点击弹出,不会被拖拽事件抢走。
  • 删除按钮上的 onMouseDown={e => e.stopPropagation()} 可以防止拖拽,但不影响点击。
    import { SortableContainer, SortableElement, SortableHandle } from 'react-sortable-hoc';const DragHandle = SortableHandle(() => (<span style={{ cursor: 'grab', marginRight: 8, marginTop: 3 }}><MenuOutlined /></span>));<SortableContainerNewuseDragHandle  //这个属性helperClass="row-dragging"onSortEnd={(e, i) => onSortEnd(i, e.oldIndex, e.newIndex)}><SortableItemkey={idx}index={idx}value={<Row gutter={8} key={idx}>{/* 拖拽把手区,只这一块允许拖 */}<Col span={1}><DragHandle /></Col><Col span={21}> ...内容... </Col><Col span={2}><Popconfirm ...><Buttonblockstyle={{ border: 'none' }}icon={<DeleteOutlined />}onMouseDown={e => e.stopPropagation()}/></Popconfirm></Col></Row>}
    />

http://www.dtcms.com/a/391114.html

相关文章:

  • [吾爱原创] 图片尺寸调整-支持批量、多格式、缩小、放大、保留元数据、无损质量、最小体积、预览
  • 【C语言】C 语言文件操作全解析:从基础到进阶
  • 《工作流落地篇:工作流中涉及到的主要数据库表》
  • 实验二理解 Java 语言的基本结构和程序设计方法
  • 【开题答辩全过程】以 基于Java的社区医疗预约系统的设计与实现为例,包含答辩的问题和答案
  • 以虚筑实,虚拟仿真技术浇筑水利工程人才培养的数字基座
  • 拟声 0.79.1 | 高颜值,拟态风格,B站歌曲,可下载,可搜索歌词
  • 团体程序设计天梯赛-练习集 L1-038 新世界
  • 【MySQL】约束类型
  • AXI4 DDR读写测试
  • 一个.h .hpp 笔记
  • MongoDB数据类型学习笔记
  • STM32实现USB的CDC+MSC+AUDIO的USB复合设备
  • x265静态编译win10--
  • STM32学习-Keli仿真
  • LeetCode hot 100 解题思路记录(一)
  • 01-搭建后端django项目
  • 深入探索卷积神经网络:从基础到高级架构(一)
  • 【大数据社科交叉方向会议】第六届大数据与社会科学国际学术会议(ICBDSS 2025)
  • 计算机网络 知识点梳理及讲解(二)物理层:编码调制、传输媒体、信道复用、宽带接入等
  • 学习嵌入式的第三十八天——ARM——概述
  • 初级会计【备考】
  • Windows系统忘记用户名密码怎么办
  • 市场部绩效考核关键指标与市场分析
  • 嵌入式 - ARM8
  • MongoDB备份数据库
  • 【OpenGL】LearnOpenGL学习笔记23 - ShadowMap、PCF
  • MongoDB文档规范
  • 让设计、办公、创作效率翻倍的技术文章大纲
  • 能不能写一个linux下类vim的编辑器