169 похожих чатов

Всем привет, расскажу свою ситуацию: Шаг 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-ый столбец. Но в контексте ДОМ-элементов удаляется последний столбец, а свойства удаленного по данным столбца перешли к следующему столбцу.

Я потратил очень много времени на выяснение ситуации, но не нашел в своем приложении видимых багов, все работает согласно стейту, если через девтулзы менять стейт, то все тоже работает прогнозируемо.

Но вот другие тесты, которые я провел, показали, что не все в порядке с ДОМ-элементами.

Это мой баг или фича виртуального дом-дерева?)

9 ответов

27 просмотров

а key наверное === index?

SkyWalker ✙- Автор вопроса
Nikolay Tolochnyy
а key наверное === index?

Да, но я пробовал модифицировать key. Создавал разные уникальные комбинации, но на результат это не повлияло. В консоле никаких ошибок не выдает.

Не уникальные ключи в мапе

SkyWalker ✙- Автор вопроса

key был действительно недостаточно уникальный, при другой генерации ключей, все работает адекватно

SkyWalker ✙
key был действительно недостаточно уникальный, при...

Он не вам а про свою проблему и как вы успели заметить за последние две минуты, траблы с неуникальными ключами довольно частый источник багов😏

SkyWalker ✙- Автор вопроса
SkyWalker ✙
key был действительно недостаточно уникальный, при...

Проблема в том, что я не могу использовать сторонние библиотеки, но вроде бы у меня получилось сделать уникальный key. Я просто складываю значение с индексов, вроде все работает адекватно)

SkyWalker ✙
Проблема в том, что я не могу использовать сторонн...

export const nanoid = (t = 21) => { let e = '' const r = crypto.getRandomValues(new Uint8Array(t)) for (; t--; ) { const n = 63 & r[t] if (n < 36) { e += n.toString(36) } else if (n < 62) { e += (n - 26).toString(36).toUpperCase() } else if (n < 63) { e += '_' } else { e += '-' } } return e }

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта