【发布时间】:2021-11-18 13:47:01
【问题描述】:
由于某种原因,我无法调用 useStyles,因为它会出错:
This expression is not callable.
Type 'never' has no call signatures.ts(2349)
const useStyles: never
这里是完整的代码:
import { makeStyles, Theme } from "@material-ui/core";
import IconButton from "@material-ui/core/IconButton";
import AppBar from "@mui/material/AppBar";
import Toolbar from "@mui/material/Toolbar";
import { ReactComponent as HeaderLogo } from "../../images/logo.svg";
const useStyles = makeStyles((theme: Theme) => ({
root: {
backgroundColor: theme.palette.VampirismBlack.main,
}
}));
const Header = (): JSX.Element => {
const classes = useStyles();
return (
<AppBar position="static">
<Toolbar variant="dense">
<HeaderLogo width="125" height="75" />
<IconButton>
Home
</IconButton>
<IconButton>
Changelog
</IconButton>
<IconButton>
Tutorials
</IconButton>
<IconButton>
Wiki
</IconButton>
<IconButton>
Join Discord
</IconButton>
</Toolbar>
</AppBar>
)
}
export default Header;
我之前构建了几个不同的 React 应用程序,但从未遇到过这个问题。
有什么想法吗?
【问题讨论】:
-
我没有收到那个错误,但我在
theme.palette.VampirismBlack上收到了一个错误。您是否将Theme的定义从@material-ui/core"扩展为包含该颜色?如果没有,您将需要使用自定义主题类型,而不是您导入的主题类型。
标签: reactjs typescript material-ui