JAvascriptスタティックタイプ検出ツール-Flow
1375 ワード
前言
最近vueのソースコードを見たとき、vueがflowを使って何をしているのか、コードを一目見たとき、cosplay Type scriptだと思いました.調べてみると、なかなか差のないものだったようです0
Flowとは
Flowはjavascriptサービス専用の静的タイプ検出ツールです.
Flowは私たちに何をもたらすの?
普段のプロジェクトでは、タイプの不一致問題による一連の問題に遭遇することは少なく、タイプの問題のバグを調べるのも疲れています.
インストール
これではnodeを使う必要はありませんmodules/...一連のパスがflowを実行しました.それからindexを追加します.jsファイルでテストしましょう.
jsファイルを保存した後、Flowを実行できます.
terminalの誤報を見ることができます
間違いを報告すれば成功を証明する!
個人的な観点.
プロジェクトが一定の規模に達しなければ、このような流れはやはり骨が折れると思います.大規模なプロジェクトでは、Flowはその強大な価値を体現しており、
最近vueのソースコードを見たとき、vueがflowを使って何をしているのか、コードを一目見たとき、cosplay Type scriptだと思いました.調べてみると、なかなか差のないものだったようです0
Flowとは
Flowはjavascriptサービス専用の静的タイプ検出ツールです.
Flowは私たちに何をもたらすの?
普段のプロジェクトでは、タイプの不一致問題による一連の問題に遭遇することは少なく、タイプの問題のバグを調べるのも疲れています.
インストール
npm install --save-dev flow-bin
package.json
ファイルのscriptにコマンドを追加します."scripts": {
"flow": "flow"
}
これではnodeを使う必要はありませんmodules/...一連のパスがflowを実行しました.それからindexを追加します.jsファイルでテストしましょう.
// @flow
function foo(x: ?number): string {
if (x) {
return x;
}
return "default string";
}
@flow
はflow検出声明で、それを加えて仕事をしています.number、stringは、明らかにタイプ宣言です.jsファイルを保存した後、Flowを実行できます.
npm run flow
terminalの誤報を見ることができます
➜ flowTest npm run flow
> [email protected] flow /Users/Terry/Downloads/flowTest
> flow
Error: index.js:5
5: return x;
^ number. This type is incompatible with the expected return type of
3: function foo(x: ?number): string {
^^^^^^ string
Found 1 error
間違いを報告すれば成功を証明する!
個人的な観点.
プロジェクトが一定の規模に達しなければ、このような流れはやはり骨が折れると思います.大規模なプロジェクトでは、Flowはその強大な価値を体現しており、
Flow
は生活をより美しくしています.はい、だから、大規模なプロジェクトに対して、私はTypescript
を選びました!