我正在将Material-UI (v4.4.3)集成到一个React (v16.9.2) TypeScript (v3.6.3)网站中。使用样例AppBar组件示例https://material-ui.com/components/app-bar/和TypeScript指南https://material-ui.com/guides/typescript/#typescript,我有以下函数组件。
然而,在这一行,我得到了关于useStyles()的TS错误。
然而,在这一行,我得到了关于useStyles()的TS错误。
const classes = useStyles();
(TS): 期望得到一个参数,但却没有得到。
import * as React from 'react';
import { createStyles, Theme, makeStyles } from '@material-ui/core/styles';
import AppBar from '@material-ui/core/AppBar';
import Toolbar from '@material-ui/core/Toolbar';
import Typography from '@material-ui/core/Typography';
import Button from '@material-ui/core/Button';
import IconButton from '@material-ui/core/IconButton';
import MenuIcon from '@material-ui/icons/Menu';
const useStyles = makeStyles(({ spacing }: Theme) =>
createStyles({
root: {
flexGrow: 1,
},
menuButton: {
marginRight: spacing(2),
},
title: {
flexGrow: 1,
},
}),
);
export default function ButtonAppBar() {
const classes = useStyles();
return (
<div className={classes.root}>
<AppBar position="static">
<Toolbar>
<IconButton edge="start" className={classes.menuButton} color="inherit" aria-label="menu">
<MenuIcon />
</IconButton>
<Typography variant="h6" className={classes.title}>
MSC
</Typography>
<Button color="inherit">Login</Button>
)}
</Toolbar>
</AppBar>
</div>
);
}
我想使用默认主题。我有什么遗漏吗?