Всем привет, расскажу свою ситуацию:
Шаг 1:
https://prnt.sc/vq2g9eЗдесь я просто демонстрирую свое приложение (пилю на реакте, само собой). Здесь можно добавлять или удалять ряд или столбец. Для того, чтобы удалить нужно навести на таблицу и появятся кнопки удаления
Шаг 2:
https://prnt.sc/vq2hauВыбираем необходимый нам столбец и удаляем его.
Шаг 3:
https://prnt.sc/vq2m0aВроде бы все хорошо и работает так как нужно, 4-ый столбец удален. Но все это только на уровне отображаемых данных, но не на уровне дом элементов, сейчас продемонстрирую.
Шаг 1:
https://prnt.sc/vq2jjhЗапускаем приложение заново и помечаем через девтулзы 4 столбец, который мы удаляем и 6-ой. Для его 6-ой станет понятно позже.
Шаг 2:
https://prnt.sc/vq2k1tПосле нажатия кнопки удаления можно увидеть, что если взять в контексте отображаемых данных удалился 4-ый столбец. Но в контексте ДОМ-элементов удаляется последний столбец, а свойства удаленного по данным столбца перешли к следующему столбцу.
Я потратил очень много времени на выяснение ситуации, но не нашел в своем приложении видимых багов, все работает согласно стейту, если через девтулзы менять стейт, то все тоже работает прогнозируемо.
Но вот другие тесты, которые я провел, показали, что не все в порядке с ДОМ-элементами.
Это мой баг или фича виртуального дом-дерева?)