接口文件优先级中的流类型声明

Flowtype declaration in interface file precedence

正在尝试 Flow 类型检查节点项目。我使用计时器并取消引用它,这样在关闭时不会保留节点进程运行。

unref 不存在于浏览器中使用的计时器中,因此为了避免这种情况,我在之前添加了一个声明...

declare var setInterval : any;
setInterval(function(){ ...

... 类型检查成功。但是,如果我将此声明移动到接口文件(类似于示例 Checking third-party code 示例),它似乎没有被使用,并且出现以下错误:

call of method unref
Property not found in 
... core.js:70:1,87:1: Number

core.js中的定义是否优先?

提出这个问题时,内置库文件确实优先于任何用户库文件,并且无法覆盖它们。

Flow v0.19.0(2015 年 12 月 1 日发布)开始,您现在可以覆盖内置库。优先级从高到低的顺序如下:

  1. 从命令行使用 --lib

  2. 指定的 Lib 文件
  3. .flowconfig

  4. [libs] 部分指定的 Lib 文件
  5. 内置库