美文网首页配置
vue2.0项目配置flow类型检查

vue2.0项目配置flow类型检查

作者: ltinyho | 来源:发表于2017-06-18 14:17 被阅读0次

vue2.0的项目中加入flow类型检查。当前项目是用js写的,当项目越来越大,由于js弱类型的特性,相比ts(typescript)这种强类型的语言而言,后期维护会越来越困难。为了解决这个问题,决定使用flow 加入类型检查。

一、flow了解

flow是fackbook公布的javascript静态类型检查器。 可以检查js中一些bug,eg:自动类型转换中出现的问题。flow官网

引用flow官网的介绍

flow is a static type checker for javascript

flow初体验

// @flow
let a:number = 2;
function foo(b:tring):boolean{
    return false;
}

使用bebel转换后

let a = 2;
function foo(b){
    return false;
}

从上面代码可以看出,使用flow后的代码更清晰明了。虽然使用注释也可以实现,但使用注释太繁琐,而且不直观。

二、flow的安装

flow可以直接通过npm或者yarn安装。官网推荐安装方式

这里以npm为例

npm install --save-dev flow-bin

安装完成后在package.json中加入下面的脚本

"scripts": {
    "flow":"flow check"
  }

同时还要安装babel编译器,将flow的类型检查代码从代码中剥离,转变成正常的js代码

npm install --save-dev babel-cli babel-preset-flow

在babel配置文件.babelrc中加入

{
  "presets": ["flow"]
}

三、flow使用

配置flow

我的配置文件

[ignore]
.*/node_modules/.*
.*/test/.*
.*/build/.*
.*/config/.*
[include]

[libs]

[options]
module.file_ext=.vue 
module.file_ext=.js

  • 2、新建一个文件index.js
// @flow 
let a:number = '3';

// @flow或者 /* @flow */告诉flow检查这个文件
输入npm run flow 执行类型检查

注:在vue单文件组件使用flow需要额外配置

  • 1、在.flowconfig文件的[options]中配置.vue文件扩展名
module.file_ext=.vue 
/* @flow
<template>
  <div>
  </div>
</template>
*/
// <script>
  let a:string = 2;
  console.log(a);
  export  default {
    data(){
      return {
       
      }
    }
  }
// </script>
/*
<style scoped>
</style>
*/

注意:
1、 在注释template和style时使用/**/注释,在template和style内部不能再使用 /* */这种注释,这个不是flow不识别,本来就不应改/**/中嵌套/**/,应该在/**/中采用 // 注释风格
2、如果不想在.vue中使用注释的方法,可以在ide中安装flow,但是不能使用npm run flow来检查了。

webstorm中配置flow

配置webstorm,使其支持flow语法。官网ide配置

总结一下为3点:

  • 1、安装node包
  • 2、全局安装flow
  • 3、在框架设置中选择JavaScript flow

以上是我在vue2.0项目安装flow的全部过程。

参考文章:

相关文章

  • vue2.0项目配置flow类型检查

    在vue2.0的项目中加入flow类型检查。当前项目是用js写的,当项目越来越大,由于js弱类型的特性,相比ts(...

  • vue 源码学习(一) 目录结构和构建过程简介

    Flow vue框架使用了Flow作为类型检查,来保证项目的可读性和维护性。vue.js的主目录下有Flow的配置...

  • flow.js

    flow是facebook开源的js静态类型检查工具 flow命令: flow init:启用flow, flow...

  • 认识flow到入门

    认识Flow,Flow是一个类型检查器,加入类型注释的,即叫做覆盖类型 why Flow javascript是一...

  • TypeScript

    Flow JavaScript 的类型检查器 yarn add flow-bin --dev 安装 flow 代码...

  • Vue源码解读——准备工作(一)

    flow vue使用flow进行静态类型检查,学习flow有助于理解vue源码,了解flow。 flow是什么? ...

  • Vue源码学习(一)之目录结构和构建

    flow 为什么使用 FlowJavaScript 是动态类型语言,因此使用 Flow 做静态类型检查,在编译期间...

  • 阅读Vue源码--前置知识

    Flow[https://flow.org/] 认识 FlowJavaScript 静态类型检查器,vue 源码利...

  • Vue 源码解析

    一、FLow类型检测 安装Flownpm install flow-bin 初始化flow项目flow init ...

  • flow

    flow 是 Facebook 出品的 JavaScript 静态类型检查工具。 vue 的源码利用了 flow ...

网友评论

    本文标题:vue2.0项目配置flow类型检查

    本文链接:https://www.haomeiwen.com/subject/vmiiqxtx.html