Files

1.9 KiB
Raw Permalink Blame History

迭代目标:20-策略列设置拖拽排序

目标

策略 tab「列设置」弹层(ColumnSettingsPopover)的列排序交互从 ↑↓ 箭头点按 升级为 鼠标选中后拖动排序(原生 HTML5 DnD),并对齐 Tab 设置的即时持久化体验。

目标描述

  • 背景:策略 tab 的可配置列(基础数据列 + 自定义字段列)在「列设置」弹层中管理,排序目前依赖 ↑↓ 箭头(R-013 迭代 11 产物,当时刻意简化,代码注释自述「用箭头替代 DnD」)。老师反馈希望 改成鼠标选中后拖动排序(2026-09-10)。
  • 结论:复用 R-011 Tab 设置已验证的原生 HTML5 DnD 模式(draggable 行 + 落点高亮 + drop 重排), 零第三方依赖;落点立即持久化(strategy-columns/update 整表覆盖),弹层去掉「保存」按钮只留「关闭」。
  • 范围:仅改 src/client/views/ColumnSettingsPopover.jsx 单文件;服务端/API/表格渲染零改动; 固定列(代码/名称/操作/展开箭头)不参与排序,维持现状。
  • 验收线:拖拽可重排列顺序且落点高亮可见;drop 后立即写库(无需点保存);↑↓ 箭头仍可微调; 勾选显隐立即生效;刷新后列顺序保持。对应需求 R-024(已定稿)。

目标讨论过程

  1. 老师反馈(2026-09-10):策略 tab 列设计可否做成鼠标选中后拖动排序。
  2. AI 调研:Tab 设置(R-011)已实现同款原生 HTML5 DnDSettingsSection.jsx),可零依赖复用; 列设置弹层存在未使用的 dragKey 状态(原计划 DnD 的残留)。
  3. 登记 R-024(讨论中)→ 方案草案 A/B/C → 老师确认方案 A(弹层内拖拽); 保存时机 / 箭头去留按 AI 推荐默认(立即持久化 + ↑↓ 保留兜底)。

对老师(项目主理人)的配合需求

  • 无(纯前端交互优化,服务端零改动,验收走页面人工确认)。