拖动排序后端设计
每个元素,都有一个字段 index,表示元素的排序信息。
规定元素从 0 开始递增。
基本操作如下:
- 增加数据: 新增元素时,序号为当前元素数据
总量值 - 删除元素:删除元素时,将大于该元素的序号
都减 1 - 修改元素排序:当元素从
x移动到y时:- 若
x < y时,则将(x, y)范围内的元素都减 1 - 若
x > y时,则将(y, x)范围内的元素都加 1
- 若
- 查询元素:展示列表时,按照
index字段进行排序即可- 若需要查第
n位元素时,元素位置为index = n - 1
- 若需要查第
在接口设计方面,前端传给后端是一个偏移值 offset,offset = y - x,当元素向排序大的方向移动时,offset 的为正值;若往排序小的方向移动时,offset 为负值。
浙公网安备 33010602011771号