【问题标题】:Flow does not report the correct type for a variable without @flowFlow 不会为没有 @flow 的变量报告正确的类型
【发布时间】:2018-05-10 12:48:30
【问题描述】:

我有一个包含以下三行的文件。

//
var g1 = navigator.geolocation;
g1.getCurrentPosition(position => {}, () => {});

当我运行 dump-types 命令时,Flow 将 g1 的类型报告为:“2:5-6: any”。当我将@flow 指令添加到文件中时,如下所示:

//@flow
var g1 = navigator.geolocation;
g1.getCurrentPosition(position => {}, () => {});

它正确地报告了 2:5-6:地理位置。

我的问题是如何让 Flow 执行更精确的类型推断,就像“@flow”在文件中一样,即使我无法修改它们。

谢谢。

【问题讨论】:

  • 你为什么要这样做?我问,因为编写库定义(a-la flow-typed)可能会得到你想要的东西。 (否则我不确定该怎么做)
  • 我想获取变量类型以进行另一次分析。我已经添加了流类型定义,这就是为什么在将@flow 添加到文件时它会正确报告地理位置的原因。
  • 老实说,我不太明白你在这里的目的。你想在 github 上抛出一个 MVP/repro-repo 吗?

标签: flowtype


【解决方案1】:

你可以设置all to true in .flowconfig [options] section:

[options]
all=true

将此设置为true 以检查所有 文件,而不仅仅是带有@flow 的文件。 all 的默认值为 false

【讨论】:

    猜你喜欢
    • 2017-04-05
    • 1970-01-01
    • 2017-11-20
    • 2019-03-12
    • 1970-01-01
    • 2023-03-18
    • 2017-08-05
    • 1970-01-01
    • 2017-10-01
    相关资源
    最近更新 更多