【发布时间】:2020-11-15 02:05:20
【问题描述】:
我正在使用 Reactjs 和 Material UI 制作一个自适应菜单,我已经完成了所有操作,但是当我尝试导入时 在不同的文件中定义了一个常量,不幸的是函数不起作用。
函数定义:
export const Adapting = ({
openDrawer,
setOpenDrawer,
}) => {
const iOS = process.browser && /iPad|iPhone|iPod/.test(navigator.userAgent);
const classes = useStyles();
return(
<React.Fragment>
<SwipeableDrawer
disableDiscovery = {iOS}
disableBackdropTransition = {!iOS}
open = {openDrawer}
onOpen = {() => setOpenDrawer(true)}
onClose = {() => setOpenDrawer(false)}
className = {classes.__adaptivemenu__}
>
<h2>Example Of Adaptation</h2>
</SwipeableDrawer>
<IconButton
disableRipple
onClick = {() => setOpenDrawer(!openDrawer)}
>
<MenuIcon />
</IconButton>
</React.Fragment>
);
}
导入组件
import {Adapting} from './Adaptives';
这是我在主文件中声明函数的代码部分
const [openDrawer, setOpenDrawer] = useState(false);
元素声明:
{match ?
<Adapting
open = {openDrawer}
onClick = {!openDrawer}
onClose = {setOpenDrawer}
onOpen = {setOpenDrawer}
/>
: qtabs}
错误是:
TypeError: setOpenDrawer is not a function
【问题讨论】:
-
你能告诉我们确切的错误信息是什么吗?另外,你是如何导入
Adapting的? -
TypeError: setOpenDrawer is not a function这是错误,导入是import {Adapting}from './Adaptives';
标签: javascript reactjs material-ui