?
目录
1、快速上手
2、?Flow 开发工具插件
3、Flow 类型写法
4、Flow文档网址
1、快速上手
- yarn init --yes
- yarn add flow-bin --dev?
- 新建文件夹src,在src新建文件?01-getting-started.js,添加 //@flow 注释标记
//@flow
function sum (a: number, b: number) {
return a + b
}
sum(100, 100)
sum(100, '100')
- yarn flow init //初始化 flow
- yarn flow? // 运行 flow

- yarn flow stop // 停止运行 flow
- node 01-getting-started.js 运行 JS代码,不支持类型注解,类型注解只是帮我们检查代码是否有错误,所以通过过安装 flow-remove-types 方式移除掉类型注解
- yarn add flow-remove-types --dev
- yarn flow-remove-types src -d dist

- 或者通过过安装 @babel/core @babel/cli @babl/preset-flow 来移除类型注解
- yarn add?@babel/core @babel/cli @babl/preset-flow --dev
- 在根目录添加配置文件 .babelrc
{
"presets": ["@babel/preset-flow"]
}

2、?Flow 开发工具插件
(1)我们可以利用 vscode商店插件替代自己安装的过程。搜索 Flow-lanuage-Support

注:只有修改重新修改保存文件,这个插件擦能生效
(2)关于支持 flow的插件 :https://flow.org/en/docs/editors/
3、Flow 类型写法
?(1)类型判断(没有给 n 添加类型注解时,也会根据方法传入的参数进行类型判断)

?(2)类型注解(确定变量的返回类型,修改类型会检查出错)

(3) 原始类型?(6种)

?(4)数组类型

(5)对象类型

?(6)函数类型

?(7)?特殊类型

?(8)?Mixed 与 Any(两个都是任意类型)
- Mixed:强类型
- Any:弱类型(这个类型存在的意义是为了兼容老代码)

4、Flow文档网址
|