首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么流型libdefs类型不能一致工作?

为什么流型libdefs类型不能一致工作?
EN

Stack Overflow用户
提问于 2017-07-03 16:00:18
回答 1查看 1.8K关注 0票数 2

我有一个使用流进行静态类型检查的React项目;我使用flow-typed安装了npm第三方库的libdefs。但是,有时无法识别这些类型。例如,下面是使用react-router-dom npm包的React组件,在使用来自相应flow-typed/npm/react-router-dom_v4.x.x.js的类型时会出现identifier ... Could not resolve name流错误。

但是,该类型在libdef中:

我正在与其他flow-typed类型一起这样做,而且它正在工作。我已经确认在package.json中安装了最新的库,并安装了最新的相关flow-typed libdef:

来自v4.x.x

我还尝试像ES6模块那样显式导入类型:

import type { RouterHistory } from 'react-router-dom'`

但是这会导致一个RouterHistory not found in 'react-router-dom'错误,即使在上面的截图中可以看到它存在于来自flow-typed/npm/react-router-dom_v4.x.x.js libdef中;我认为只有当npm库中包含*.js.flow文件时,类型的显式导入才能工作( react-router-dom没有这样做,而是在flow-typed中定义)。

所以问题是:如果在相关的RouterHistory flow-typed libdef中定义了类型,为什么类型不能工作?

EN

回答 1

Stack Overflow用户

发布于 2017-07-03 18:02:20

您的导入声明是错误的。应该是这样的:

代码语言:javascript
复制
import type { RouterHistory } from 'react-router-dom'

编辑:

RouterHistory类型似乎在react路由器包中。由于react-router使用react路由器作为基本依赖项,因此您应该添加具有流类型的react路由器包。流反应路由器

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44889886

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档