@KIQIK

Как правильно написать функцию синхронизации виртуального DOM с отрендеренным в браузере?

Пишу реализацию фронтэнд фреймворка по курсу, но синхронизация там сделана упрощённа. А я бы хотел в целях усложнения попробовать реализовать её приближенно к реальности. Можете подсказать план, как правильно расписать алгоритм?
В курсе там просто паралелльно два цикла по нодам рекурсивно и проверяя имя тэга заменяют, обновляют, при отсутствии элемента добавляется, а если элементов больше, то они удаляются.

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

P.S Пока отложил задачу на будущее, поэтому буду благодарен, если подскажите ссылки на необходимые статьи, примеры. Из тех что находил там есть ошибки при удалении, например, но и в целом не было учета определенных ситуаций. Общие функции по рендеру дом структуры, проверки аттрибутов тэга, имени тэга написать могу, но без самого алгоритма как сравнить узлы реального и виртуального дерева - это второстепенное.
  • Вопрос задан
  • 40 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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