Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   Баг удаления в Grid с группировкой (https://javascript.ru/forum/extjs/67370-bag-udaleniya-v-grid-s-gruppirovkojj.html)

Sogl 14.02.2017 04:45

Баг удаления в Grid с группировкой
 
Сегодня на продакшене обнаружил очередную проблему с группированным Grid. Я просто обалдел, увидев что происходит :blink:

В общем, Fiddle тот же, что и в другой теме:
https://fiddle.sencha.com/#view/editor&fiddle/1pu4

В этот раз баг с удалением записи:
  1. Открываем инструменты разработчика и смотрим в консоль. Запоминаем id, который собираемся удалить.
  2. Жмем на крестик для любой записи, подтверждаем удаление.
  3. Итог — удаляется совершенно другая запись, что видно в консоли.
Берется позиция до группировки Grid и по ней уже происходит удаление.

Как удалять то правильно?
Пока для себя решил вообще выключить группировку... вещь нужная, но проблем приносит массу.

Данную проблему обнаружил при попытке удалить дублирующую запись, а вместо нее удалялись то одна то другая.

VitalikSanich 14.02.2017 10:51

Как-то сталкивался с непонятным получением записи по rowIndex...
Вот так вроде проблемы нет:
handler: function (grid, rowIndex, colIndex, item, e, record) {
    console.log(record);
    console.log(grid.getStore().getAt(rowIndex)); // для сравнения 
    grid.getStore().remove(record);
}

siber-biber 14.02.2017 11:57

товарищ выше вам правильно написал.. при группировке стора опираться на номера строк нельзя.

Sogl 15.02.2017 09:05

VitalikSanich, спасибо, помогло!
Причем мой код удаления взят из официального примера Сенчи. :)


Часовой пояс GMT +3, время: 07:35.