uni-app拖拽排序前言这周做页面的时候有一个字符排序的功能,可以手动拖动改变排序位置。搜索了一下,找到了sortable.js,可以用来实现这个拖拽功能。思路在查看sortable.js的官方文档时,看到里面有一个onUpdate事件。拖动改变位置后,返回值包含初始索引值和改变后的索引值。通过这个,可以改变数组的内容,实现拖动后改变位置的功能。安装sortable.js的步骤npminstallsortablejs--save-dev获取节点这里获取的节点是需要拖链表的父节点letuls=document.getElementById('list')loadthenodenewSortable(uls,{})触发onUpdate事件因为在做的过程中发现如果通过操作dom节点的位置来修改item的顺序,会出现bug,所以经过查找资料,终于发现在Vue中使用Sortable的问题,所以在修改item的顺序之前,应该先修改它对应的节点。改变一个节点,先删除移动的节点,然后将移动的节点插入到原节点newLi=uls.children[newIndex],//移动节点oldLi=uls.children[oldIndex];//原节点uls.removeChild(newLi)//删除移动的节点uls.insertBefore(newLi,oldLi)//将移动的节点插入原节点注意:因为从下往上拖动时,节点会增加一个,所以原来的索引值会少一个,所以当newIndex
