Вот рабочий пример: https://codesandbox.io/s/mzlmxpw4r8?fontsize=14
Я думаю, что у вас могут быть две возможные проблемы.
Настройка темы пользовательского интерфейса для материала
// Import the wrapper component, and the the creator function
import { MuiThemeProvider, createMuiTheme } from "@material-ui/core/styles";
// Create a new theme using Nunito Sans
const theme = createMuiTheme({
typography: {
fontFamily: "Nunito Sans, Roboto, sans-serif"
}
});
const App = function(props) {
// Pass the theme as a prop to the theme provider
return (
<MuiThemeProvider theme={theme}>
<Demo />
</MuiThemeProvider>
);
};
ДляРади этой демонстрации я подумал, что будет проще использовать размещенную версию Nunito Sans в Google Fonts, поэтому мой файл index.html
также имеет следующее:
<link
rel="stylesheet"
href="https://fonts.googleapis.com/css?family=Nunito+Sans:300,400,500"
/>
Изменение способа загрузки шрифтов
Вы упомянули, что видите запросы на поступление файлов, так что, вероятно, это не так, но я подумал, что все равно заметил бы это.
Из примера CSS, который вы предоставляете, выглядитдля меня, как будто вы скопировали объявление CSS из самого Google Fonts.Когда я захожу сейчас для Nunito Sans, я получаю точно такой же результат: https://fonts.googleapis.com/css?family=Nunito+Sans:300,400,50
Однако, это зависит от браузера, запрашивающего CSS.Например, если вы используете браузер, который поддерживает WOFF, но не WOFF2, вам будут предоставлены файлы WOFF.
У Google Fonts есть свои собственные причины и логика для автоматической обработки, поэтому стоит подумать, стоит либудет хорошим вариантом для вас.В противном случае, если вы хотите разместить шрифты локально, их загрузка напрямую из API шрифтов Google будет менее надежной, чем получение их из другого источника со всеми необходимыми форматами (на данный момент WOFF и WOFF2 почти всегда достаточно, иВы можете поддерживать дополнительно ~ 9% используемых браузеров , добавляя форматы WOFF без особых усилий).
Например, после загрузки также WOFF:
@font-face {
font-family: 'Nunito Sans';
font-style: normal;
font-weight: 400;
src:
url('../assets/font/NunitoSans-400.woff2') format('woff2'),
url('../assets/font/NunitoSans-400.woff') format('woff');
}
Или, поскольку Material UI работает с пакетами typefaces-
на npm , вы можете установить нужные вам форматы и CSS следующим образом:
npm install typeface-nunito-sans
Затем наначало вашего файла JavaScript:
import "typeface-nunito-sans";
// Or require('typeface-nunito-sans') if you aren’t using import
Тем не менее, моим первым предложением было бы начать с живой версии Nunito Sans Google Fonts и при необходимости изменить свой подход:
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Nunito+Sans:300,400,500" />
Надеюсь, это поможет!