【发布时间】:2021-06-03 20:33:48
【问题描述】:
升级 Flow 时,node_modules 中出现错误是很常见的,但这会让一堆错误消失:
[declarations]
<PROJECT_ROOT>/node_modules/.*
另外,我认为它显着减少了 Flow 必须处理的东西的数量,因为
在声明模式下,代码不进行类型检查。但是,类型检查器在检查其他代码时会提取和使用函数、类等的签名。
但这不是默认设置。有什么理由我不应该这样做吗?如果类型签名本身有错误(例如实现接口但方法类型不同的类,或者安装的流类型定义在库和使用项目之间不同),它会不会在我的使用这些类型签名的代码中报告一些错误?
我应该注意,因为 AFAIK Flow仍然 没有仅从源代码输出定义的工具*,我刚刚将整个源文件复制到 .js.flow 在我们的许多内部包。因此,在使用这些包的项目中升级 Flow 时会发生错误。但是,即使在我们当前使用的 graphql 版本中,我也看到了错误。
*当我尝试使用文档中提到的print-signature CLI 命令时,它实际上并不存在。
【问题讨论】:
标签: flowtype