Ре-рендер элемента HTML на JS?

Здравствуйте!
Подскажите, как перерисовать отдельный html элемент, а не всю страницу. Например как это делает реакт, перерисовывая компоненты. Пробовал через display: none/block, не сработало. У меня содержимое элемента рендерится из объекта, и мне нужно его перерисовать, когда объект мутирует.
  • Вопрос задан
  • 369 просмотров
Решения вопроса 1
TTATPuOT
@TTATPuOT
https://code.patriotovsky.ru/
Полностью удаляете элемент и полностью пересоздаёте его структуру из JavaScript. Скрыть и показать тот же div - это не перерендерить его.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Xuxicheta
@Xuxicheta
инженер
"перерисовать" это что? Перерисовывать можно по разному, точечно вносить изменения например.
Содержимое элемента можно сменить полностью задав innerHTML.
Можно создавать ноды, удалять существующие и на их место вставлять созданные.
Можно, как это делают некоторые движки, создавать параллельную структуру, а потом пробегаться и искать изменения относительно реальной, и если они найдены менять реальную.
Ответ написан
joeberetta
@joeberetta Куратор тега JavaScript
Читай: https://epdf.pub/google-for-dummies.html
Не получится, из-за архитектуры работы браузерных движков, можете почитать на хабре. А касательно react/vue, то там используется virtual DOM.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы