Javascript 为什么我会得到;TypeError:react“网页包”导入“模块”1“默认值a.useState不是函数”;使用reactjs钩子时出错?

Javascript 为什么我会得到;TypeError:react“网页包”导入“模块”1“默认值a.useState不是函数”;使用reactjs钩子时出错?,javascript,reactjs,debugging,react-hooks,Javascript,Reactjs,Debugging,React Hooks,我试图直接从Material Ui(简单菜单)文档中使用此组件,以便显示菜单。但是,我得到了TypeError:react\uuuu WEBPACK\u IMPORTED\u MODULE\u 1\uuuuuuuu default.a.useState不是一个函数,我在下面的当前尝试中出现了错误。我试过: import React,{useState}来自“React”然后去掉React内部const[anchorEl,setAnchorEl]=React.useState(null)使其看起

我试图直接从Material Ui(简单菜单)文档中使用此组件,以便显示菜单。但是,我得到了
TypeError:react\uuuu WEBPACK\u IMPORTED\u MODULE\u 1\uuuuuuuu default.a.useState不是一个函数,我在下面的当前尝试中出现了
错误。我试过:

  • import React,{useState}来自“React”
    然后去掉
    React
    内部
    const[anchorEl,setAnchorEl]=React.useState(null)
    使其看起来像:
    const[anchorEl,setAnchorEl]=useState(null)
  • 我还尝试用一个数字替换
    null
    ,但仍然得到相同的错误
注意:另一次尝试安装了正确的软件包,并使我的
package.json
文件如下所示():

{
“名称”:“快速反应”,
“版本”:“0.1.0”,
“私人”:没错,
“依赖项”:{
“@material ui/core”:“^3.9.0”,
“@material ui/图标”:“^3.0.2”,
“类名”:“^2.2.6”,
“节点sass”:“^4.11.0”,
“道具类型”:“^15.6.2”,
“反应”:“16.7.0-alpha.0”,
“react dom”:“16.7.0-alpha.0”,
“反应测试渲染器”:“16.7.0-alpha.0”,
“反应脚本”:“2.1.3”
},
“脚本”:{
“开始”:“反应脚本开始”,
“构建”:“反应脚本构建”,
“测试”:“反应脚本测试”,
“弹出”:“反应脚本弹出”
},
“eslintConfig”:{
“扩展”:“反应应用程序”
},
“浏览者”:[
">0.2%",
“没有死”,

“不是ie虽然我不确定上面的代码中有什么错误(我猜是使用了非发布版本的material ui,其中导出不是默认的,正如it文档所述),但这个错误发生在导入不正确的情况下。我的问题是我试图

import someNonDefaultFunction from 'someModule';
在命名/非默认导入周围添加大括号为我解决了相同的错误消息:

import {someNonDefaultFunction} from 'someModule';

使用最新的react的alphaversion@Oscar我如何确保这一点?
npm I--savereact@next反应-dom@next
应该这样做:)@Oscar是的,我试过了,但现在我得到了TypeError:
无法设置未定义的属性“current”。你能显示此错误指向的行吗?我在您提供的e代码
import someNonDefaultFunction from 'someModule';
import {someNonDefaultFunction} from 'someModule';