"Cannot import useState because there is no useState export in react"(Flow with React Hooks)



我希望我没有重复一个问题。我见过这样一个:TypeError dispatcher.useState在使用React Hooks时不是一个函数,但我的应用程序运行良好,它只是Flow中的一个错误:

Cannot import `useState` because there is no `useState` export in `react`.
4| import { useState } from 'react';

我将16.7.0-alpha用于我的react和react dom依赖项:

"dependencies": {
...
"react": "^16.7.0-alpha",
"react-dom": "^16.7.0-alpha"
},

这是我从Flow得到的唯一错误,其他React元素都很好。我的依赖关系有问题吗?

这是我文件的顶部:

// @flow
import React from 'react';
import { useState } from 'react';

编辑:我还进入了node_modules/areact文件夹,并验证了useState函数确实在其中。

2018年11月11日更新-React团队的Brian Vaughn为React钩子添加了Flow类型,并将其合并-https://github.com/facebook/flow/pull/7149/

React Flow类型尚未更新,如图所示。

如果你愿意的话,你可以做一个PR来更新它(:

在到处搜索后,找到了上面许多开发人员提到的解决方案使用流,我尝试安装流,它可以

npm i -D flow-babel-webpack-plugin适用于我,但

如果不起作用,也试试这个"flow-bin": ">=0.44.2 <1",

最新更新