为什么 Material-UI 无法识别 theme.spacing 功能?

IT技术 javascript reactjs material-ui
2021-05-08 05:18:25

描述

我正在尝试在 React 应用程序中使用 Material-UI 的theme.spacing函数,但无法识别间距函数。

Javascript 错误消息是:TypeError: theme.spacing is not a function

我不确定这是一个错误还是我安装的框架版本有问题。


语境

根据package-lock.json文件,这些是正在安装的框架版本

  • Material-UI:v3.9.2
  • react:v16.8.1
  • 铬:v72.0.3626.96
  • typescript:无
  • 创建react应用程序:v3.2.2
4个回答

好吧,事实证明这是一个错误,由请求 #14099引起

现在正在修复中,所以我要结束这个问题。

试试这个。

import { makeStyles } from '@material-ui/core/styles' 
const userStyles = makeStyles (theme => ({
gridAlign : {
    padding: theme.spacing(2),
    textAlign: 'center',
    color: theme.palette.secondary,
  },
})

之前:import { makeStyles } from '@material-ui/core';会工作。

但是现在在最新的 Material UI 版本中,我们需要添加以下导入:

import { makeStyles } from '@material-ui/styles';

尝试将@material-ui/core 包升级到最低版本 4.0.0。
运行npm i @material-ui/core@4.0.0
它解决了我的问题。