Почему React не включает теневой DOM? Разве это не сделает жизнь намного проще, чем работа с CSS в решениях JS?
На что реагируют причины, не поддерживает теневой дом внутренне. В настоящее время для решения проблем инкапсуляции стилей нам нужно использовать сторонние библиотеки.
2 ответа
Shadow DOM реализован только в последних выпусках современных браузеров (только Chrome, Opera и Firefox).
Пока команда React разработала решение для гораздо большего количества браузеров и более старых выпусков.
Более того, переход на Shadow DOM повлечет за собой множество изменений в архитектуре и философии фреймворка (без ретро-совместимости).
Последнее, я полагаю, команда довольна своим текущим виртуальным DOM.
Виртуальный DOM быстрее, потому что избегайте ненужных изменений в DOM, которые являются дорогостоящими с точки зрения производительности, потому что изменения в DOM обычно вызывают повторный рендеринг страницы, а также позволяет собирать несколько изменений, которые будут применены одновременно, так что не все изменение вызывает повторную визуализацию, но вместо этого повторная визуализация происходит только один раз после того, как набор изменений был применен к DOM.
Если вы чувствуете необходимость реализовать теневой DOM в реакции, вот мы: