我正在尝试将边框颜色从默认的紫色更改为白色。
这是我到目前为止所拥有的:
const useStyles = makeStyles(theme => ({
darkModeColorInput: {
color: WHITE
},
darkModeColorLabel: {
color: WHITE,
"&:after": {
borderColor: WHITE
}
}
}));
<TextField
margin="normal"
inputProps={{
className: classes.darkModeColorInput
}}
InputLabelProps={{
className: classes.darkModeColorLabel
}}
required
fullWidth
id="email"
label="handle or email"
name="email"
autoComplete="email"
autoFocus
color={WHITE}
/>
这将呈现:
标签也将焦点从白色切换为默认的紫色。我在这里做什么错了?
答案 0 :(得分:4)
最简单的方法是通过ThemeProvider
使用深色主题:
import { ThemeProvider } from '@material-ui/styles';
import { createMuiTheme } from '@material-ui/core/styles';
const darkTheme = createMuiTheme({
palette: {
type: 'dark',
},
});
<ThemeProvider theme={darkTheme}>
<Component />
</ThemeProvider>
然后,您将获得所有Material UI组件的主题,这些主题将在深色背景上正确显示。
如果您仍然想完全控制外观(并且不想使用主题),则需要在InputLabelProps
上为InputProps
和TextInput
设置自定义样式( https://material-ui.com/api/text-field/。