Типография - довольно простой компонент.Все, что он делает, это задает className
для компонента таким образом, чтобы текст был стилизован соответствующим образом.
Ваш пример кода примерно эквивалентен:
<div className="potentially-multiple-classes-determined-by-Typography" style={{ padding: 8 }}>
{props.children}
</div>
Проп component
может быть любымэто действительно для использования в качестве типа элемента в JSX.Типография будет использовать компонент prop (который по умолчанию равен 'p', если не указано component
prop или variant
prop) для визуализации элемента, которому он передает имена классов, и он также проходит через любые свойства, которые не являются частьюAPI типографии (именно поэтому свойства style
и children
передаются компоненту в этом примере).