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

Всем привет. Подскажите плз, куда капнуть. Имею: 1. Вебсокет подключение, через которое

при каждом изменении на бэке фронт получает новый json, в которое хранятся записанные табличные данные.
2. На основании этих данных vue каждый раз перерисовывает таблицу с нуля.
Я хочу:
Чтобы эта таблицу можно было редактировать онлайн. Соответственно у меня реализован механизм, что если кликнуть на div блок ячейки, он становится input, где я могу ввести данные и отправить их на сервер пост запросом.
И как бы этот механизм работает, но
Проблема:
В момент, когда я ввожу в input данные, может прилететь по вебсокету новый пакет данных и он перерисует таблицу, что приведет к:
Потере введенных в input данных.
Потери самого инпута (вместо него снова будет див блок)
Решение:
Пока вижу два:
1. На момент активации инпута - отключать вебсокет соединение. Но не хотелось бы. Т.е. я бы хотел чтобы все табличные данные все так же постоянно обновлялись, кроме тех ячеек, что сейчас редактируются.
2. Как-то добавить обработку в отрисовку, чтобы обходить див блоки, которые имеют css class disabled со свойством display: none;

Но если честно, мне не один из вариантов не нравится. Можете подсказать, плз, что еще можно сделать?

3 ответов

8 просмотров

клон делай

Завьялов-Владислав Автор вопроса
Roman
клон делай

Клон данных в смысле?

Отрисовка повторяющихся элементов во Vue работает так, что изменяются только те элементы, у которых изменились пропсы, поэтому может быть не нужно обнулять массив со значениями. Моё решение: 1) Перед тем как редактировать ячейку вы запоминаете её значение и кладёте в переменную 2) Если во время редактирования данных приходят новые данные вы можете обновить все строки, кроме редактируемой (или даже все ячейки кроме редактируемой) 3) При сохранении вы можете сделать prompt, что данные изменились на —> 'qwerty', вы действительно хотите перезаписать значение. И если нажимается на "да", то просто перезаписываются.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта