【发布时间】:2018-12-26 05:23:17
【问题描述】:
我只想忽略某种类型的错误,或者在其上指定规则。就我而言,这是Cannot resolve name 类型错误。我可以设置全局变量吗? (外部调用代码)。
【问题讨论】:
标签: flowtype
我只想忽略某种类型的错误,或者在其上指定规则。就我而言,这是Cannot resolve name 类型错误。我可以设置全局变量吗? (外部调用代码)。
【问题讨论】:
标签: flowtype
是的,您可以使用库定义文件来执行此操作。例如:
definitions
.flowconfig 的[libs] 部分下添加此文件夹
definitions 中创建一个文件,并将其命名为globals.js
在这个globals.js 文件(或definitions 文件夹内的任何文件)内,您可以编写声明。您可以在此处查看执行此操作的确切语法:https://flow.org/en/docs/libdefs/creation/
例如,如果我想声明一个全局 age 变量存在,我会在我的 globals.js 文件中包含这个:
declare var age: number;
你也可以声明复杂的对象:
declare type Person = {
name: string,
age: number
};
declare var person: Person;
如果不知道全局变量是什么类型,可以设置为any:
declare var weirdThing: any;
如果全局变量来自流行的第 3 方库,您可能可以安装一些库定义来自动获取有关它的类型信息并停止流错误。如果您还没有,请查看flow-typed。
供参考:
使用我上面展示的示例,您的文件夹结构将类似于:
.
├── .flowconfig
├── definitions
│ └── globals.js
├── package.json
└── src
你的.flowconfig 内容看起来像:
[ignore]
[include]
[libs]
definitions
[lints]
[options]
[strict]
【讨论】:
将// $FlowFixMe 放在相关行之前,将抑制 Flow v0.33 或更高版本的错误。
【讨论】: