Flow 是js的静态类型检查工具;是通过静态类型注解实现的;
// @flow
function square(n: number): number {
return n * n;
}
square("2"); // Error!
- 安装
- npm install --save-dev babel-cli babel-preset-flow
- 在.babelrc 文件添加如下:
{
"presets": ["flow"]
}
- 初始化项目
执行flow init 会产生一个文件.flowconfig,用于通知后台进程在哪里开始检查FLOW代码;
flow status 在后台运行一个进程,检查Flow文件;多次执行此命令仍然运行同一个后台进程;
flow stop 停止后台进程;
- 运行原理
flow 进程收集所有// @flow 标记的文件,使用类型检查;也可以使用/* @flow */标记; 如果想检查没有标记的文件,flow check --all