ReSharper 2020.3 ヘルプ

TypeScript のコードスタイル支援

ReSharper はあなたのコードをきちんときれいに保つための多くの機能を提供します。ReSharper の他の機能の大部分と密接に連携しているため、特定のコードスタイルに従ってコードを生成したり既存のコードベースを変更したりできます。命名標準、フォーマット規則、その他のさまざまな小さな要素を含むコードスタイルは、非常に詳細なレベルに構成してチーム全体で共有できます。

他の言語と同様に、スコープを修正またはコードのクリーンアップを使用して、1 つのコマンドですべての TypeScript コードスタイル設定を目的の範囲に適用できます。

ReSharper は、TypeScript で次のコードスタイルアシスタント機能を提供します。

ネーミングスタイル

ReSharper は、コード内のシンボルの命名スタイルを定義、制御、適用できます。命名スタイルはルールのセットとして実装され、それぞれが特定の識別子を制約のセットでターゲットにします(たとえば、ルールは静的なプライベート読み取り専用フィールドをターゲットにできます)。各ルールには、接尾辞、接頭辞、複合語の大文字化などを定義する 1 つ以上のスタイルを関連付けることができます。

これらのルールは、ReSharper がコード補完およびコード生成機能を使用して新しいコードを生成し、コードテンプレートを適用し、リファクタリングを実行するときに考慮されます。ReSharper は、命名規則の違反を検出して修正するのにも役立ちます。必要に応じて、命名規則の自動チェックを構成または無効にできます。

命名スタイルの設定と適用の詳細については、ネーミングスタイルを参照してください。

コードフォーマットルールの管理と適用

コードスタイルの重要な点は、コードのフォーマット方法、つまり、空白と空白行を使用してコードブロックを配置および分離する方法、インデントにタブを使用するかどうか、および使用する方法。

The extensive set of ReSharper code formatting rules has a default configuration that takes into accountdefault Visual Studio formatting options as well as numerous best practices. You can configure every detail of formatting rules and enforce the rules in your code. These rules are applied when ReSharper produces new code with code completion and code generation features, applies code templates and performs refactorings. The formatting rules can also be applied to the existing code in the current selection, current file, or in a larger scope up to the entire solution.

ReSharper は、共有設定のメカニズムを使用してフォーマット設定を保存します。コード編集 | TypeScript | スタイルのフォーマットグループのオプションページでフォーマットルール設定できます。フォーマット設定EditorConfig ファイルとクラン形式ファイルに保存して共有することもできます。

オプションページを掘り下げる代わりに、コードのブロックを選択し、Alt+Enter を押してフォーマット | 構成を選択し、このブロック適用可能なフォーマットルール構成して、このブロックの変更を確認することができます。

引用スタイル

TypeScript specification allows you to use both single (') and double (") quotes for handling string literals. It is a good idea to stick to the same quote style within your project or solution. To do so, you can configure your preference as well as the severity level of the corresponding code inspection on the コード編集 | TypeScript | 構文スタイル page of ReSharper options.ReSharper will detect and highlight the code that differs from your preference. To enforce this preference in the existing codebase, either run code cleanup withone of the built-in profiles フルクリーンアップ or 再フォーマットして構文スタイルを適用 , or create and run カスタムプロファイル where the corresponding option selected.

この設定は JavaScript の同じ設定と共有されているため、ある言語で変更すると、他の言語の設定も変更されます。

モジュールのインポートスタイル

他のモジュールから型をインポートする方法はいくつかあります。モジュールの別名を追加するか、完全修飾型の名前を使用することができます。ReSharper を使用すると、目的の範囲内で型をインポートするための望ましい方法を適用できます。

優先モジュールのインポートスタイルを適用する

  1. ReSharper オプションのコード編集 | TypeScript | 構文スタイルページの型をインポートするときに修飾子にモジュールエイリアスを追加することを優先するチェックボックスを使用して、好みを指定します。

  2. 「完全クリーンアップ」プロファイルを使用して、希望の範囲内にあるコードのクリーンアップを実行します

必要に応じて、カスタムプロファイルを使用してモジュールインポートスタイルを適用できます。これを行うには、カスタムクリーンアッププロファイルを作成し、TypeScript 特異的プロファイル設定の ' インポート ' ステートメントを最適化するチェックボックスをオンにします。

参照コメントの最適化

ReSharper は、未使用の参照コメントを検出して削除できます。参照コメントを最適化するには、「フルクリーンアップ」プロファイルを使用して目的のスコープのコードのクリーンアップを実行する作成するか、カスタムクリーンアッププロファイルを作成して、TypeScript 特異的プロファイル設定の参照コメントを最適化するチェックボックスをオンにします。

終了文

Javascript / Typescript は、ステートメントが改行で終了する場合、または中括弧で囲まれたステートメントが 1 つしかない場合、ステートメントを終了するためにセミコロンを必要としません。ただし、多くの場合、各ステートメントの後にセミコロンを使用することをお勧めします(たとえば、この StackOverflow スレッド(英語)を参照してください)。ReSharper は、セミコロンを自動的に追加できます。

特定のファイル、プロジェクト、またはソリューションのステートメントを終了するには、「フルクリーンアップ」プロファイルまたはステートメント終了するJavascript / Typescript セクションで選択されているカスタムプロファイルを使用して、目的のスコープでコードクリーンアップ実行します

修飾子の配置

If you prefer to use or not to use explicit 'public' modifier, you can configure your preference as well as the severity level of the corresponding code inspection on the コード編集 | TypeScript | 構文スタイル page of ReSharper options.ReSharper will detect and highlight the code that differs from your preference. To enforce this preference in the existing codebase, either run code cleanup withone of the built-in profiles フルクリーンアップ or 再フォーマットして構文スタイルを適用 , or create and run カスタムプロファイル where the corresponding option selected.

暗黙的 / 明示的な型指定

TypeScript 仕様では、型に暗黙的または明示的に型を指定したり、型に 'any' キーワードを使用したりできます。ReSharper コードスタイルアシスタントを使用して、タイプを明示的に指定する必要があるかどうか、また暗黙の 'any' を許可するかどうかを定義できます。

好みを指定するには、ReSharper オプションのコード編集 | TypeScript | 構文スタイルページにある型指定グループのコントロールを使用します。

暗黙の「any」を使用することをプロジェクト設定で設定することもできます。暗黙の 'any' タイプがプロジェクト設定で許可されていない場合は、コードスタイルの設定に関係なく、常にエラーとしてハイライトされます。

暗黙的 / 明示的な入力設定を特定のファイル、プロジェクト、またはソリューションに適用するには、「完全クリーンアップ」プロファイル、またはタイプアノテーションの存在をコードスタイルと同期させるおよび必要に応じて明示的な「任意の」型アノテーションを追加するチェックボックスが TypeScript 特異的セクションで選択されているカスタムプロファイルを使用してコードクリーンアップを実行します。。

暗黙的 / 明示的なタイプ設定の好みも ReSharper のコードインスペクションによって考慮に入れられています。

関連ページ:

ReSharper 設定の管理と共有

ReSharper は、階層化された設定のメカニズムを使用して環境設定を保存するため、次の利点があります。さまざまなソリューションで異なる設定を行うことができます。環境設定のさまざまなサブセットを別の場所に保存し、特定のソリューションで作業するときに環境設定を組み合わせることができます。例: 記号のアイコンとチーム設定のコード形式を個人設定で保存し、これらの設定を自動的に組み合わせることができます。設定の特定のサブセットを VCS に保持することにより、チーム内の設定を同期できます。ReShar...

スコープの修正

ほとんどのクイックフィックスは、キャレットで現在の問題を修正できますが、中には (たとえば、未使用のディレクティブを削除する、フィールドを読み取り専用にする、冗長なキャストの除去など)、現在のファイル、現在のプロジェクト、またはソリューション全体など、より大きな範囲で問題を自動的に見つけて修正できるものもあります。「スコープ内で修正」と同様に、一部のコンテキストアクションはより広いスコープで適用できます。範囲内の修正を適用する:このような修正は、アクションリストの横に表示される小さな矢印で識別...

コードのクリーンアップ

コマンドラインユーティリティを使用してコードのクリーンアップを実行することもできます。ReSharper を使用すると、フォーマットやその他のコードスタイル設定を一括モードで適用して、1 つ以上のファイル、プロジェクト、またはソリューション全体でコードスタイル違反を即座に排除できます。一貫性のない名前の修正はバッチ適用時に名前の競合が発生する可能性があるため、コードのクリーンアップには含まれません。コードクリーンアッププロファイル:コードのクリーンアップには、ニーズに応じてさまざまな場合に適用...

ネーミングスタイル

バージョン 2018.3 から、ReSharper は既存のコードから C# シンボルの命名規則を自動的に学習を実行できます。命名規則を手動で構成する場合は、ReSharper オプション(Alt+R, O)のページの自動検出ルールを使用するチェックボックスをオフにします。ReSharper は、コード内のシンボルの命名スタイルを定義、制御、適用できます。命名スタイルはルールのセットとして実装され、それぞれが特定の識別子を制約のセットでターゲットにします(たとえば、ルールは静的なプライベート読み...

コードフォーマットルールの管理と適用

コードスタイルの重要な点は、コードのフォーマット方法、つまり、空白と空白行を使用してコードブロックを配置および分離する方法、インデントにタブを使用するかどうか、および使用する方法。ReSharper コードフォーマットルールの広範なセットには、デフォルトの Visual Studio フォーマットオプションと多数のベストプラクティスを考慮したデフォルト構成があります。フォーマットルールのすべての詳細を構成し、コードにルールを適用できます。これらのルールは、ReSharper がコード補完およびコ...

EditorConfig を使用する

どのフォーマットスタイルの設定がファイルフォーマット情報ウィンドウの現在のファイルに影響するかを見ることができます。ReSharper は、EditorConfig 形式で定義されたコード形式スタイル、コード構文スタイル、C# の命名スタイル、コードインスペクション重大度レベルをサポートします。Matthell は、ReSharper が EditorConfig を使用してフォーマットルールの設定全体をどのように維持するのをヘルプいるかを示しています。EditorConfig とは何ですか? R...