Я не мог заставить мою таблицу реагирования быть сортируемой с помощью jquery ui sortable, поскольку реакция довольно строга в отношении вовлечения других библиотек в манипуляции с DOM. Я попытался отменить фактическое перетаскивание, но, по-видимому, это все еще мешает DOM. Мне нужно было исправить быстро, вот что я придумал: чтобы реакция не путалась с измененным DOM, я использую флаг состояния, чтобы вызвать полную повторную визуализацию таблицы без него. попасть в виртуальный DOM:

class Whatever extends Component {
state = {
 showTable: true,
};
componentDidMount() {
  this.setTableSortable();
}
setTableSortable() {
  const tbody = this.getTableBody();
  tbody.sortable({
    update: this.handleSort,
  });
}
handleSort = () => {
  const sortedTableIds = ...;// get the ids by querying the DOM 
  this.setState({ showTable: false }); // hide the table
  // do whatever you need with the ids, like a dispatch
  this.setState({ showTable: true }); //show the table back
  this.setTableSortable(); // call .sortable() again
}
getTableBody() {
  return jQuery(ReactDOM.findDOMNode(this).querySelector(‘tbody’));
}
render() {
  const table = this.state.showTable ? {<Table>...</Table>} : null;
 ...
}

Я знаю, что это чертовски грязно, но это может спасти вас от невыполненного дедлайна.