2024-01-30 · JavaScript

用 Pointer Events 做出可拖曳排序的清單

不靠任何拖曳函式庫,還附帶鍵盤操作的排序清單。

前言

從命中測算、插入位置的預留空隙到 pointer capture,讓項目平順地跟著游標移動。同一份程式碼同時支援滑鼠與觸控,並保留以鍵盤調整順序的替代方式。

核心智模型

  • 從最小、能運作的版本開始,並讓它可觀測。
  • 把你正在承擔的取捨寫下來,而不只是寫下你交付了什麼功能。
  • 團隊規模改變時重新檢視決策;JavaScript 的多數選擇都有保存期限。

實作起點

  1. 在實驗分支重現情境,並放在你信任的量測指標旁邊。
  2. 一次只改變一個變數,讓 diff 小到能用一句話解釋清楚。
  3. 保留成果、丟掉腳手架。
Terminal window
git switch -c experiment/one-thing

結語

這裡沒有教條。把它當成一份你有權不同意的檢查清單——最好附上你自己的實驗結果。