Правила свойств, определенные в объекте стиля, не переопределяют правила, предусмотренные в теме по умолчанию, поскольку они имеют меньшую специфичность.
Для одного из них цвет ошибки входной метки задается в селекторе CSS '.root.error'
, игнорируяПрефиксы компонентов добавлены в имена селекторов.
Какие селекторы используются для нацеливания на элемент, можно узнать в разделе «Стили» консоли разработчика браузера.
Это то же самое, что цвет для состояния ошибки текста звездочки и помощника формы.
Чтобы сгенерировать аналогичные селекторы, вам нужно написать объект стилей как:
const styles = {
root: {
'&$error': {
color: "green"
}
},
asterisk: {
'&$error': {
color: "green"
}
},
underline: {
'&$error:after': {
borderBottomColor: "green",
}
},
error: {
}
};
Здесь я заменил color
с red
на green
.
В TextField
переопределить InputProps.classes
, FormHelperTextProps.classes
и InputLabelProps.FormLabelClasses
const { classes } = this.props
//...
return (
<TextField
//...
InputProps={{
classes: {
root: classes.root,
error: classes.error,
underline: classes.underline
}
}}
FormHelperTextProps={{
classes: {
root: classes.root,
error: classes.error
}
}}
InputLabelProps={{
shrink: true,
FormLabelClasses: {
root: classes.root,
asterisk: classes.asterisk,
error: classes.error
}
}}
//...
/>
)