使用antdesgin vue +sortablejs 实现嵌套表格(不展开)拖拽排序时 拿到的排序对象不对
不展开的话怎么让拿到的index 或者对象正确?求大佬?
//拖拽
function sortMenuTable() {
let el: any = document.querySelectorAll(
'.sort-table-content>.ant-spin-nested-loading>.ant-spin-container>.ant-table>.ant-table-content>.ant-table-scroll>.ant-table-body>table > tbody'
)[0];
var sort = Sortable.create(el as any, {
ghostClass: 'sortable-ghost', // Class name for the drop placeholder,
fallbackOnBody:true,
setData: function (dataTransfer: any) {
dataTransfer.setData('Text', '');
},
onMove: function () {
if (!enableDrag.value) return false;
else return true;
},
onEnd: (evt: any) => {
console.log("oldIndex:",evt.oldIndex,"newIndex:",evt.newIndex)
console.log('old',orderList.value[evt.oldIndex])
console.log('new',orderList.value[evt.newIndex])
let state = evt.oldIndex > evt.newIndex ? 'before' : 'after';
let newMenu = orderList.value[evt.newIndex].id;
let oldMenu = orderList.value[evt.oldIndex].id;
if(!enableDrag.value) return;
if (evt.oldIndex === evt.newIndex) return;
if (orderList.value[evt.newIndex].parentId !== orderList.value[evt.oldIndex].parentId) {
message.warning('只支持同父级排序');
getTableData();
} else {
sortChange(newMenu, oldMenu, state);
}
},
});
}