Не удается переопределить вес шрифта Material UI Typography

#material-ui

#материал-пользовательский интерфейс

Вопрос:

Я только начал использовать Material UI и научился настраивать тему по умолчанию. Я попытался изменить цвет палитры по умолчанию, и это сработало, но переопределение свойства typography не сработало.

Я пытаюсь изменить свойство FontWeight варианта h3. Вес шрифта по умолчанию для варианта h3 равен 400. Я меняю его на 100 или 300, но это не отражает.

Вот мой код

Component.js

 return (

         <Typography variant="h3" color="secondary">
               Arc Development
         </Typography>
    )
  

theme.js

 import {createMuiTheme} from "@material-ui/core";

const arcBlue = "#0B72B9";
const arcOrange = "#FFBA60";

export default createMuiTheme({
    palette: {
        common: {
            blue: `${arcBlue}`,
            orange: `${arcOrange}`,
        },
        primary: {
            main: `${arcBlue}`
        },
        secondary: {
            main: `${arcOrange}`
        }
    },
    typography: {
        h3: {
            fontS: 0,
        }
    }
});
  

Ответ №1:

Чао, для переопределения Typography вы должны определить в своей теме объект с именем overrides , а затем внутри этого объекта вы должны определить другой объект с именем MuiTypography и переопределить h3 вариант следующим образом:

 export default createMuiTheme({
    palette: {
        common: {
            blue: `${arcBlue}`,
            orange: `${arcOrange}`,
        },
        primary: {
            main: `${arcBlue}`
        },
        secondary: {
            main: `${arcOrange}`
        }
    },
    overrides: {
       MuiTypography: {
          h3: {
           fontWeight: 100
       }
    }
  }
});
  

И если вы проверите элемент, вы увидите:

введите описание изображения здесь

Вот пример codesandbox.

Комментарии:

1. Я использовал ваш код, но он по-прежнему не работает, даже ваш пример codesandbox

2. @FahadShaikh Я обновил свой ответ доказательством того, что мой пример работает. Пожалуйста, смотрите мой пример во всех деталях… вы создали используемую тему const theme = createMuiTheme(Theme); ? Вы заключили свой компонент в ThemeProvider проходящий theme like <ThemeProvider theme={theme}> ? Ваш пример кода не завершен, и я не могу предоставить больше предложений. У вас есть пример codesandbox, чтобы мы могли работать с тем же кодом?

3. Я создал свой собственный codesandbox и проверил его инструменты разработчика. Я обнаружил, что код работает (очевидно, ваш тоже), но вес шрифта в тексте не изменяется. мой codesandbox

4. @FahadShaikh да, я не вижу графических различий ниже 400. Я вижу различия в значениях 600 и 800. После 800 я не вижу различий.