web-dev-qa-db-ja.com

Visual Studio Code-インポート見積設定の調整

Visual Studio CodeのTypeScriptで作業する場合、タイプのインポートの提案(スペース+ピリオドによってトリガーされる)は、二重引用符を使用してインポートを生成します。

TypeScript linterは、可能な限り一重引用符が使用されていることを確認します。

以下に示すように、提案には二重引用符( "@angular/...")があります Import suggestion with double quotes

インポートの設定を調整するにはどうすればよいですか?

58

VSCode 1.10の時点では、これはまだ(残念ながら)不可能です。しかし、多くのユーザーにとっては問題のようです。 VSCodeテーマはこの問題を認識しており、これを実行して、いつ実装されるかを知ることができます。 https://github.com/Microsoft/TypeScript/issues/1327


2018年6月更新

VSCode 1.24(2018年6月)以降、このオプションがあります!詳細については、以下を参照してください。

https://code.visualstudio.com/updates/v1_24#_preferences-for-auto-imports-and-generated-code

47

この設定を調整するには、vscodeユーザー設定で次の行を構成することもできます。

"prettier.singleQuote": true
48
abdllhbyrktr

VS Code 1.21.1の時点で、編集する必要があります

/ usr/share/code/resources/app/extensions/TypeScript-basics/snippets/TypeScript.json

Windowsの場合

/ Applications/Visual Studio Code.app/Contents/Resources/app/extensions/TypeScript-basics/snippets/TypeScript.json

Windows 10(vscodeバージョン1.30。*(ユーザーセットアップ)以降)

* C:\ Users\<yourusername>\AppData\Local\Programs\Microsoft VS Code\resources\app\extensions\TypeScript-basics\snippets\TypeScript.json

そのファイルの「外部モジュールのインポート」セクションで、body配列プロパティーの値を"import { $0 } from '${1:module}';"にします。セクションは次のようになります。

"Import external module.": {
    "prefix": "import statement",
    "body": [
        "import { $0 } from '${1:module}';"
    ],
    "description": "Import external module."
},
9
cdoremus

この構成をサポートする代替手段は TypeScript Toolbox です。

genGetSet.pathStringDelimiterを設定することで構成可能です。デフォルトでは、すでに一重引用符のインポートがあります。

8

[ファイル]> [設定]> [設定]に移動し、ユーザー設定の下にこれを追加します。

"TypeScript.preferences.quoteStyle": "single",
"javascript.preferences.quoteStyle": "single"
6
Wagner da Silva

Editor config を使用して修正し、プロジェクトのルートディレクトリにある。editorconfigファイルを開きます(持っていない場合は、そのファイルを作成して)[*]の後にこの行を追加します

[*]
...
quote_type = single

wiki で、プロパティの完全なリストを見ることができます。

6
Joel Jacquez

TypeScript 2.5以降、ファイル内の最初のインポートまたはエクスポートステートメントがスキャンされ、インポート候補の使用時に一重引用符または二重引用符が使用されているかどうかが判断されます。

https://github.com/Microsoft/TypeScript/pull/1775

3
tredder

また、vscodeユーザー設定で次の行を構成して、文字列で一重引用符を許可することもできます。

[設定]> [ユーザー設定]に移動します

"prettier.singleQuote": true

これにより、文字列で単一引用符を使用できます。それ以外の場合、すべての二重引用符を手動で単一引用符に変更すると、保存中に元に戻ります。また、追加

"tslint.autoFixOnSave": true

保存中に自動修正します。

2
anirban8611

これは既に実装されています(別の返信で述べたように)!ただし、TypeScriptの最新バージョンをまだ使用していない可能性があります。

解決策は簡単です。

「TypeScript」と右下隅の小さな笑顔の顔の間のTypeScriptバージョン番号(たとえば2.3.4)をクリックします。次に、Visual Studio Codeビルトインバージョン(現時点では2.5.3)に切り替えます。

このVisual Studioコードは、最初のインポートステートメントを見ることで、インポート引用スタイルを推論します。いずれにしても、小さなポップアップラベルには二重引用符が表示されることに注意してください。

バグレポート

関連するプルリクエスト

これにより、コード修正によって追加された新しいインポートに一重引用符を使用するか二重引用符を使用するかを決定する機能が追加されます。新しいインポートが追加されると、モジュール指定子を使用して、既存のインポートまたはエクスポート宣言のソースファイルの最上位ステートメントをスキャンします。次に、最初に見つかったものの引用スタイルを使用します。ファイルに既存のインポートがない場合、二重引用符を使用することにフォールバックします。

1
Andrei Sinitson

上記の解決策はうまくいきませんでした

そこで、私の回避策は次のとおりです。vscodeを使用する場合、"tslint.autoFixOnSave"settings.jsonのtrueは、ファイルを保存するときにこれらのインポート引用を自動的に修正します。

0
Varun Sukheja