После просмотра исходного кода я попробовал следующее, которое работает, но выдает предупреждение в консоли.
const myTheme = createMuiTheme({
overrides: {
MuiSwitch: {
checked: {
"& + $bar": {
opacity: 1.0,
backgroundColor: "rgb(129, 171, 134)" // Light green, aka #74d77f
}
}
}
}
});
Ошибка / предупреждение, которое я получаю:
Warning: Material-UI: the `MuiSwitch` component increases the CSS specificity of the `checked` internal state.
You can not override it like this:
{
"checked": {
"& + $bar": {
"opacity": 1,
"backgroundColor": "rgb(129, 171, 134)"
}
}
}
Instead, you need to use the $ruleName syntax:
{
"&$checked": {
"& + $bar": {
"opacity": 1,
"backgroundColor": "rgb(129, 171, 134)"
}
}
}
Я не могу понять, как это сделать правильно.
Обновление:
Ниже приведено прекрасное решение, но в моем коде также есть перезапись вторичного цвета, который отличается, и новое правило также перезаписывает его.
colorSecondary: {
"&$checked": {
"& + $bar": {
opacity: 0.3,
backgroundColor: "white"
}
}
`