认识Flow - JS是动态性语言,所以要一些静态类型检查,而vue用了这个flow所以我们了解flow对我们源码阅读会有所帮助
参考课件:https://ustbhuangyi.github.io/vue-analysis/v2/prepare/
introduce
JavaScript 是动态类型语言,它的灵活性有目共睹,但是过于灵活的副作用是很容易就写出非常隐蔽的隐患代码,在编译期甚至看上去都不会报错,但在运行阶段就可能出现各种奇怪的 bug。ES6用Babel编译编译如果没有明确的语法错误,它是不会报错的,但是在实际运行阶段就说不准了
先安装:
- 1 npm i -g flow-bin
2 flow init
图片.png
start
图片.png
图片.png
图片.png
我们开始测试
图片.png
这里是number而不是字符串,所以flow报错,动态类型语言
图片.png
我们换个例子
图片.png
可以看见,这个例子它不会报错,(我们还是把这个测试放到一个文件夹会比较好)
在如则个例子:
图片.png
图片.png
让我们来看下vue中使用的flow
图片.png
图片.png
我们可以看到这个配置项它忽略了什么,和检查什么
图片.png
声明自定义类型,这样就可以在源码中引用这些自定义类型可以判断是否匹配,这样一来就可以把任意类型的去做语法检查
图片.png
flow和typyscript
网友评论