DefinitelyTypeとは?Flowtypeとの違い

違い

  • DefinitelyType
    • 「いろいろなライブラリ用のTypeScriptの型定義ファイルを公開しようぜー!」なプロジェクトのこと。
    • またはそのプロジェクトによって作られた型定義ファイルのこと。
  • flow(日本ではflowtypeと呼ばれることが多いらしい):
    • JavaScriptで型をチェックできるようにしようぜー!」なプロジェクトのこと。
    • Facebookがやってる。

DefinitelyType

例えば、axiosをTypeScriptで使う場合、axios自身が「これが俺の型定義ファイルだよ!」という風に、型定義ファイルをライブラリ内に含めてくれています。

なので、型定義ができます。

 

しかも、マイナーなライブラリだと、型定義ファイルが用意されていません。

なので、型定義ができません。

 

でもそんなライブラリでも型定義がしたい!😣

 

そんな人たちが作ったのがDefinitelyTypeというプロジェクト(というかリポジトリ)。

「ないなら自分で型定義ファイルを作ってしまえ!んでどうせなら他の人も使えるように公開してしまえ!」

な精神で公開されているのがDefinitelyType。

 

例えば、react-transition-groupというライブラリでは、型定義が用意されていません。

そんなときは、

「react-transition-group DefinitelyType」

などのワードで検索してみて、もし型定義ファイルが公開されているようであれば

npm install --save @types/react-transition-group

を実行すれば、型定義ファイルをインストールすることができます。

flow

TypeScriptが流行る前は、こちらが主流だった(?)みたいですが

今では使われることがほとんどないみたいです。

 

 

おわり

コメント

タイトルとURLをコピーしました