Переопределение цвета TextField в MaterialUI - PullRequest
0 голосов
/ 04 октября 2019

Я пытаюсь изменить цвет границы с фиолетового на белый по умолчанию.

Вот что у меня есть:

    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}
    />

Это делает:

img

Метка также переключается с белого на фиолетовый по умолчанию в фокусе. Что я тут не так делаю?

1 Ответ

4 голосов
/ 04 октября 2019

Самый простой способ сделать это - использовать темную тему через 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>

Затем вы получите тему для всех компонентов пользовательского интерфейса материалов, которые будут правильно отображаться на темном фоне. .

Если вы все еще хотите полностью контролировать внешний вид (и не хотите использовать тему), вам необходимо установить собственные стили для InputLabelProps и InputProps на вашем TextInput (https://material -ui.com / api / text-field / ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...