Реакт убил концепцию Shadow-DOM - PullRequest
1 голос
/ 21 марта 2019

Shadow DOM разработан как инструмент для создания приложений на основе компонентов.

Но если я использую стиль на основе компонентов в React, что означает, что каждый компонент загружает только свой собственный файл CSS, мне все еще нуженконцепция Shadow DOM?

1 Ответ

2 голосов
/ 21 марта 2019

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

React - это одна из многих сред, которые делают свои собственные компоненты для своего типа компонентов.Но это не устраняет цель Shadow DOM.

Стандартные элементы HTML используют Shadow DOM.Такие элементы, как <video> и <audio> являются отличными примерами.Вы не видите, что находится внутри Shadow DOM, и вам не нужно.

Если бы больше разработчиков компонентов использовали <audio> и <video> в качестве примеров того, как писать небольшие, повторно используемые компонентытогда все будет лучше вместе.Но часто разработчики хотят превратить всю свою страницу в один компонент, и это не лучший способ написания кода.

React, Vue, Angular и другие имеют свой способ создания компонентов и страниц.Используют ли они Shadow DOM или нет, это не имеет отношения к необходимости и использованию Shadow DOM.

...