2024-01-30 · JavaScript

用 Pointer Events 实现拖拽排序列表

不依赖任何拖拽库,还带键盘操作的排序列表。

前言

从命中检测、占位空隙到 pointer capture,让条目平滑地跟随指针移动。同一份代码同时支持鼠标与触摸,并保留用键盘调整顺序的替代方案。

核心心智模型

  • 从最小可运行的版本开始,并让它可观测。
  • 把你正在承担的取舍写下来,而不只是写下交付了什么功能。
  • 团队规模变化时重新审视决策;JavaScript 里的多数选择都有保质期。

动手起点

  1. 在实验分支重现问题,放在你信得过的度量指标旁边。
  2. 一次只改变一个变量,让 diff 小到能用一句话解释清楚。
  3. 保留成果,丢掉脚手架。
Terminal window
git switch -c experiment/one-thing

写在最后

这里没有教条。把它当作一份你有权不同意的检查清单——最好附上你自己的实验结论。