Меня смущает терминология пользовательского интерфейса, и я буду признателен, если кто-нибудь сможет мне это объяснить.
Возьмем, к примеру, это описание https://material -ui.com / guides / api /:
Распространение
Предоставленные недокументированные свойства распространяются на корневой элемент;например, свойство className применяется к корню.
Теперь, допустим, вы хотите отключить рябь в MenuItem.Вы можете воспользоваться преимуществами поведения распространения:
Свойство disableRipple будет работать следующим образом: MenuItem> ListItem> ButtonBase.
Я так понимаю, что корневой элемент в этомcase is ButtonBase - самый внутренний элемент.А «недокументированное» в свойстве MenuItem disableRipple «распространяется» на корневой элемент - ButtonBase.Итак, свойства «распространяются» сверху вниз - на самый внутренний элемент.
С другой стороны, когда я читаю это https://material -ui.com / customization / overrides / :
Переопределение имен классов
Первый способ переопределить стиль компонента - использовать имена классов.Каждый компонент предоставляет свойство className, которое всегда применяется к корневому элементу.
Мне кажется, что под корневым элементом они понимают самый внешний компонент - тот, который я использую из пользовательского интерфейса материала - MenuItemа не внутренний, поверх которого он построен (ButtonBase).В противном случае это просто не имеет смысла, потому что я не смогу стилизовать mui-компонент, если бы он не был правдой.
Итак, когда они говорят, что что-то применено к «корневому» элементу, они имеют в виду, чтоон применяется к самому внешнему компоненту (муи, который я импортирую и использую) или к самому внутреннему компоненту (поверх которого строится компонент материала)?