MUI主题配置报错:'fontFamily'不存在于ThemeOptions类型中
问题解决:MUI createTheme配置fontFamily类型错误
错误原因
你把fontFamily直接放在了ThemeOptions的顶层对象里,但MUI的主题配置规范中,字体族属于typography字段的子属性,ThemeOptions类型的顶层并没有fontFamily这个属性,所以TypeScript会抛出类型不匹配的错误。
正确配置方式
将fontFamily嵌套在typography对象下即可:
import { createTheme, ThemeProvider } from '@mui/material/styles'; // 配置主题 const theme = createTheme({ typography: { fontFamily: 'NotoSans-Bold, sans-serif', }, }); function App() { return ( <ThemeProvider theme={theme}> {/* 你的仪表盘组件内容 */} </ThemeProvider> ); } export default App;
额外注意事项
- 如果
NotoSans-Bold是自定义字体,需要先确保字体已正确引入(比如通过CSS的@import或本地字体文件导入),否则浏览器会回退到备用字体(比如示例中的sans-serif)。 - 注意字体名称的准确性:如果是通过第三方字体库(如Google Fonts)导入的Noto Sans粗体,实际字体族名可能是
'Noto Sans', sans-serif,需要和字体导入时的名称对应,避免字体不生效。
内容的提问来源于stack exchange,提问作者Sandeep Thomas
相关产品推荐
相关产品推荐

