Flow的使用

flow 是 Facebook 推出的 js 静态类型检查工具。

flow可以在代码运行前对类型错误进行检查,包括:

  • 类型错误
  • 对 null 的引用
  • 以及可怕的 “undefined is not a function” flow 允许我们给变量添加类型
快速上手
//初始化项目配置(我这是用yarn,npm之后补充)
yarn init -yes
//安装flow
yarn add flow-bin -dev
//初始化flow 获取初始化flow配置文件
yarn flow init

在用vs code使用的时候,本身vs code 有一个javascript的规则验证,为了更好使用,需要关闭其验证
文件》首选项》设置》 搜索 javaScript validate 找到enable,取消勾选
其他编程器的话也需关闭javascript的规则验证
需要使用flow的文件头上需要加上@flow 标记 告诉其需要验证flow

/* @flow */
// @flow  任何一个都可以
只要带有这个注释,都会进行类型检测

或者
/* @flow weak */ 只对有加类型注解的变量进行类型检测

基本使用

// @flow
function sum(a:number, b:number) {
	return a + b;
}
sum(100, 100)
sum('100', '100')

//运行
yarn flow
//会发现错误信息 部分 
#Error --------------------------------------------------

#   01/01.js:8:12
#   8| sum('100', '100')
#                 ^^^^^ [1]

#References:
#   01/01.js:3:26
#   3| function sum(a:number, b:number) {
#                               ^^^^^^ [2]

当然这只是我们开发环境上,在生产环境用的话需要将其移除

编译移除注解

方案一:官方方案,使用 flow-remove-types

yarn add flow-remove-types --dev
yarn flow-remove-types . -d dist
# yarn flow-remove-types [需要移除注解的文件,一般为src] -d [输出目录,如果不存在则新建,一般为dist]

方案二:babel

yarn add @babel/core @babel/cli @babel/preset-flow --dev

需要增加一个【.babelrc】在根目录 内容如下

{
    "presets":["@babel/preset-flow"]
}

运行如:

yarn babel src -d dist
//yarn babel [需要移除注解的文件] -d [输出目录]

vs code 安装flow插件 修改完代码,重新保存后会检测类型异常。
其更多用法可观其 官网.

基本是使用
类型推断

设置类型,如下,flow会进行代码提示,抛出类型错误。

// @flow
function sum(n: number) {
	return n * n;
}

sum('100')
类型注解

可以帮我们推断出来变量,或者是参数的具体类型,可以更明确的去限制类型注解,而且对我们后期去理解,也是有帮助的可能去使用。

// @flow
let num:number = 1;
// num = 'string',此时只能赋值数字类型

function foo():number {
    return 100
}
// 此时函数只能返回数字类型,如果函数没有返回值,默认返回undefined,那么也会提醒报错。没有返回值的函数,我们需要将函数返回值类型标注为void

只写这么多了,还在学习中,大家一起学习。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spider-Flow是一种基于Python的网络爬虫框架,允许用户非常方便地创建、调度和管理各种网络爬虫任务。通过Spider-Flow,用户可以定制自己的爬虫任务,快速地抓取和处理互联网上的数据。 Spider-Flow具有以下几个特点和功能: 1. 强大的可视化界面:Spider-Flow提供了一个直观且友好的可视化界面,用户可以通过拖拽、连接图形化组件来创建和管理爬虫任务,无需编写复杂的代码。 2. 多线程调度:Spider-Flow基于多线程技术,可以同时运行多个爬虫任务,提高爬取效率和速度。 3. 可扩展性:Spider-Flow支持插件式开发,用户可以根据自己的需求编写或安装插件,扩展框架的功能。 4. 数据清洗和处理:Spider-Flow提供了丰富的数据处理组件和函数库,用户可以对爬取到的数据进行清洗、筛选、转换等操作,方便地提取有用信息。 5. 数据导出和存储:Spider-Flow支持将爬取到的数据导出到多种格式,如CSV、Excel、数据库等,方便用户进行进一步的分析和使用。 Spider-Flow使用步骤如下: 1. 安装配置:首先,用户需要安装Python和Spider-Flow框架,并进行相应的配置。 2. 创建项目:在Spider-Flow界面中,用户可以创建一个新的爬虫项目,并设置相关的参数和配置。 3. 编辑爬虫任务:用户可以从组件库中选择需要的组件,然后将其拖拽到任务编辑区域,并设置相应的参数和连接。 4. 编辑数据处理:用户可以在爬虫任务完成后,通过添加数据处理组件来清洗和处理爬取到的数据。 5. 运行任务:设置好全部的任务和参数后,用户可以点击运行按钮,启动爬虫任务的执行。 6. 导出和存储数据:当爬虫任务完成后,用户可以选择将数据导出到指定的格式,或直接存储到数据库中。 总之,Spider-Flow是一种方便快捷的网络爬虫框架,用户可以通过简单的拖拽和配置,创建并管理自己的爬虫任务,并方便地处理和存储爬取到的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值