有没有显示如何使单列网格可排序和可拖动的示例? (非托管拖动) onRowDragMove事件无法正确触发。
每行是一个只有两个键值对的对象:名称和路径。这就是我尝试过的
function onRowDrag(e) {
console.log('row drag()')
let movingNode = e.node;
let overNode = e.overNode;
let rowStore = e.api.getRenderedNodes();
console.dir(rowStore);
let rowNeedsToMove = movingNode !== overNode;
if (rowNeedsToMove) {
// the list of rows we have is data, not row nodes, so extract the data
let movingData = movingNode.data;
let overData = overNode.data;
let fromIndex = rowStore.indexOf(movingData);
let toIndex = rowStore.indexOf(overData);
let newStore = rowStore.slice();
moveInArray(newStore, fromIndex, toIndex);
rowStore = newStore;
e.api.setRowData(newStore);
e.api.clearFocusedCell();
}
function moveInArray(arr, fromIndex, toIndex) {
var element = arr[fromIndex];
arr.splice(fromIndex, 1);
arr.splice(toIndex, 0, element);
}
}