TypeScript 3.8は、タイプのみのインポートとエクスポートを追加します

MicrosoftのJavaScriptの型付きスーパーセットの新しいバージョンであるTypeScript3.8が、製品リリースとして利用可能になりました。最新のTypeScriptアップグレードでは、タイプのみのインポートとエクスポート、およびECMAScript標準への準拠が強調されています。

このリリースでは、タイプのみのインポートとエクスポートの新しい構文が追加されており、ユーザーがインポートと削除をよりきめ細かく制御できるようになっています。import type構文は唯一の輸入申告は、型注釈と宣言するために使用されると常に完全に消去されます。 export type 構文は唯一のタイプのコンテキストで使用すると活字体の出力から消去され、輸出を提供します。

TypeScriptは、JavaScriptのインポート構文を使用して参照型を有効にしました。この機能は便利ですが、TypeScriptがJavaScriptファイルを出力するときにTypeScriptタイプのインポートを省略するインポート省略機能のためにのみ機能しました。しかし、輸入エリジオンは不十分で問題がありました。

import typeTypeScript 3.8は、と組み合わせて 、実行時に使用されないインポートで何が発生するかを制御するコンパイラフラグも追加します importsNotUsedAsValues

JavaScriptのECMAScript標準に関して、TypeScript 3.8は、JavaScriptのクラスフィールド宣言提案の一部であるECMAScriptプライベートフィールドのサポートを追加します。この提案によれば、公的および私的分野は単一の直交する全体に統合されます。

TypeScript3.8で約束されているその他の改善点は次のとおりです。

  • コンパイラオプションを備えた「高速で緩い」インクリメンタル型チェックassumeChangesOnlyAffectDirectDependencies。TypeScriptは変更されたファイルとそれらを直接インポートするファイルのみを再チェック/再構築するため、このオプションは特定のファイルのビルド時間を短縮できます。開発者がプロ​​ジェクトの完全なエラーを後日まで延期することをいとわない大規模なコードベースに推奨されます。
  • * ns構文としてのエクスポートの実装。別のモジュールのすべてのメンバーを単一のメンバーとして公開するための単一のエントリポイントを提供します。
  • トップレベルawaitawait特定の条件下でファイルの先頭で式を使用する際の制限を削除する今後のECMAScript機能。
  • JavaScriptファイルは、allowJsフラグをオンにすることでTypeScript3.8でサポートされます。これらのファイルのタイプチェックは、checkjsオプションを介して、または.jsファイルの先頭に// @ ts-checkコメントを追加することでサポートされます。JavaScriptファイルには型チェック専用の構文がないため、新しいJSDocタグがプロパティに利用されます。
  • watchOptionsフィールドでtsconfig.json jsconfig.jsonユーザーは、ファイルとディレクトリを追跡するために使用するファイル監視戦略をコンパイラ/言語サービスに指示できます。
  • 文字列の連結を変換するためのリファクタリング。
  • インデックス署名のあるユニオンへのより厳密な割り当て可能性チェック、重大な変更。
  • 別のobject重大な変更では、JSDocではもうany下にありませんnoImplicitAny

TypeScript 3.8の一般リリースは、NuGetまたはNPMを介してインストールできます。

npm install typescript