JavaScriptからの移行ガイド
前提事項:
- あなたはJavaScriptを知っている
- プロジェクトで使用されているパターンや構築ツール(webpackなど)を知っている
そのような前提をもとに、一般にプロセスは以下のステップからなる:
tsconfig.json
を追加する- ソースコードの拡張子を
.js
から.ts
に変更する。any型を使ってエラーを抑制する - 新しいコードはTypeScriptで記述し、できるだけ
any
を使わないようにする - 古いコードに戻り、型アノテーションを追加し、バグを 修正する
- サードパーティ製JavaScriptコードの型定義を使用する
これらの点のいくつかをさらに議論しましょう。
すべてのJavaScriptは_有効な_TypeScriptであることに注意してください。つまり、TypeScriptコンパイラにJavaScriptをいくつか与えると、TypeScriptコンパイラによって生成されたJavaScriptは元のJavaScriptとまったく同じように動作します。つまり、拡張子を
.js
から.ts
に変更しても、コードベースに悪影響はありません。TypeScriptはすぐに型チェックを開始しますが、元のJavaScriptコードはあなたが思っていたほど整っていない可能性があります。したがって、エラーが発生します。これらのエラーの多くは、
any
を使用して抑制することができます。例:var foo = 123;
var bar = 'hey';
bar = foo; // ERROR: cannot assign a number to a string
エラーが正しいものであったとしても(ほとんどの場合、推測された情報は、開発者の考えよりも優れています)、あなたはおそらくTypeScriptで新しいコードを書きつつ、古いコードを徐々に更新することに集中することになるでしょう。型エラーを抑制する方法は以下の通りです:
var foo = 123;
var bar = 'hey';