【发布时间】:2020-01-14 23:34:57
【问题描述】:
根据此处的 MUI Texfield API,Textfield 是在以下组件之上的一个简单抽象
- 表单控件
- 输入
- 输入标签
- 填充输入
- 大纲输入
- 输入
- FormHelperText
因此,要更改上述任何组件的 Textfield 的样式,例如 notchedOutline 类,它是 OutlinedInput 的一个类,我可以执行以下操作
import { TextField } from '@material-ui/core';
const style = theme => ({
notchOutline: { /*style in here*/ }
});
<TextField
inputProps={{ notchedOutline : classes.notchedOutline }}
>
</TextField>
如果该子组件类仅对该组件是唯一的,那么所有这些都可以实现。
我的问题是,我如何为更常见的命名类设置样式,例如,如果我想同时修改 OutlinedInput、InputLabel、FormHelperText 的根类或 TextField 内的更多子组件?我认为这行不通?
<TextField
FormControlProps={{ root: classes.root }}
OutlinedInputProps={{ root: classes.root, notchedOutline : classes.notchedOutline }}
>
</TextField>
或
<TextField
inputProps={{
root: classes.OutlinedInputRoot,
root : classes.FormHelperTextRoot
}}
>
</TextField>
需要有关如何定位 TextField 子组件的特定根的帮助,而无需涉及全局 MUI 主题,或者根本不使用提供的 TextField,而是使用其上的那些子组件构建文本字段组件。
【问题讨论】:
标签: reactjs material-ui