使用Material UI v4的ThemeProvider与createTheme创建主题出现导入错误
问题根因
你当前使用的是@material-ui v4.x版本,该版本中创建主题的API名称为createMuiTheme,createTheme是v5版本才推出的更名后API,所以会触发导入失败的报错。
解决步骤
- 第一步:修改导入语句
将原代码中的导入行import { createTheme } from "@material-ui/core/styles";
替换为:import { createMuiTheme } from "@material-ui/core/styles"; - 第二步:修改主题创建代码
将原代码中的createTheme调用改为createMuiTheme:
const theme = createMuiTheme({ palette: { primary: { main: "red", }, secondary: { main: "#11cb5f", }, }, });
- 第三步:重启本地开发服务,重新编译即可消除报错。
补充说明
如果你需要使用createThemeAPI,需要将所有Material UI相关依赖升级到v5及以上版本,但v5相对v4存在大量破坏性变更,迁移成本较高,若仅需解决当前报错,使用v4原生的createMuiTheme即可满足需求。
内容的提问来源于stack exchange,提问作者Stefan
相关产品推荐
相关产品推荐

