SortableJS 禁止某些元素拖拽,并且其他元素也不可以和这些元素交换位置

41 阅读1分钟
Sortable.create(menuIconListRef.value,{
  draggable:'.menu-icon-list-list-item',
  handle: '.menu-icon-list-list-item',
  sort: true,
  filter: ".sortable-ignore", // 不可拖拽元素的className
  onEnd: (evt) => {
    const { oldIndex, newIndex } = evt
    onChangeSort(oldIndex, newIndex)
  },
  onMove(e) {
  // 不允许拖拽起来的元素 与 不可拖拽元素 交换位置
    return e.related.className.indexOf('sortable-ignore') === -1;
  },
  onChoose:(item)=>{
    console.log(item)
  }
})