Skip to main content

sv check

sv checkは、プロジェクト内の次のようなエラーや警告を見つけます:

  • 未使用のCSS
  • アクセシビリティのヒント
  • JavaScript/TypeScriptコンパイラエラー

Node 16以降が必要です。

インストール

プロジェクトにsvelte-checkパッケージをインストールする必要があります:

npm i -D svelte-check

使用方法

npx sv check

オプション

--workspace <path>

ワークスペースへのパス。node_modules--ignoreで指定したディレクトリ以外のすべてのサブディレクトリがチェックされます。

--output <format>

エラーや警告の表示方法。詳細は機械可読出力を参照してください。

  • human
  • human-verbose
  • machine
  • machine-verbose

--watch

プロセスを生存させ、変更を監視します。

--preserveWatchOutput

ウォッチモードで画面がクリアされるのを防ぎます。

--tsconfig <path>

tsconfigまたはjsconfigファイルへのパスを指定します。パスはワークスペースパスからの相対パスまたは絶対パスにすることができます。これを行うことで、設定ファイルのfiles / include/excludeパターンに一致したファイルのみに診断が適用されます。また、TypeScript および JavaScript ファイルからのエラーが報告されます。指定されていない場合は、プロジェクトディレクトリから上方にjsconfig/tsconfig.jsonファイルを探します。

--no-tsconfig

現在のディレクトリとその下にあるSvelteファイルのみをチェックし、.js / .tsファイルを無視したい場合に使用します(型チェックされません)。

--ignore <paths>

ワークスペースのルートから相対的に無視するファイルやフォルダ。パスはカンマで区切り、引用符で囲む必要があります。例:

npx sv check --ignore "dist,build"

--no-tsconfigと併用した場合にのみ効果があります。--tsconfigと併用した場合、診断されるファイルではなくウォッチされたファイルにのみ影響します。その診断はtsconfig.jsonによって決定されます。

--fail-on-warnings

指定された場合、警告があるとsv checkはエラーコードで終了します。

--compiler-warnings <warnings>

codeコンパイラ警告コードで、behaviourignoreまたはerrorであるcode:behaviourペアのリスト。例:

npx sv check --compiler-warnings "css_unused_selector:ignore,a11y_missing_attribute:error"

--diagnostic-sources <sources>

コード診断を実行するソースのリストをカンマで区切って引用符で囲みます。デフォルトではすべてアクティブです:

  • js (TypeScriptを含む)
  • svelte
  • css

例:

npx sv check --diagnostic-sources "js,svelte"

--threshold <level>

診断をフィルタリングします:

  • warning (デフォルト) — エラーと警告の両方が表示されます
  • error — エラーのみが表示されます

トラブルシューティング

プリプロセッサのセットアップやその他のトラブルシューティングについては、言語ツールのドキュメントを参照してください。

マシンリーダブル向け出力

--outputmachineまたはmachine-verboseに設定すると、CIパイプライン内やコード品質チェックなどで機械によって読みやすい形式で出力がフォーマットされます。

各行は新しいレコードに対応しています。行は一つのスペース文字で区切られた列で構成されます。各行の最初の列はミリ秒のタイムスタンプを含み、モニタリング目的で使用できます。第二列は”行タイプ”を示し、それに基づいて後続の列の数とタイプが異なる場合があります。

最初の行はSTARTタイプで、ワークスペースフォルダを含みます(引用符で囲まれています)。例:

1590680325583 START "/home/user/language-tools/packages/language-server/test/plugins/typescript/testfiles"

ERRORまたはWARNINGレコードが続く場合があります。それらの構造は出力の引数によって異なります。

引数がmachineの場合、ファイル名、開始行および列番号、エラーメッセージが示されます。ファイル名はワークスペースディレクトリ相対です。ファイル名とメッセージはどちらも引用符で囲まれています。例:

1590680326283 ERROR "codeactions.svelte" 1:16 "Cannot find module 'blubb' or its corresponding type declarations."
1590680326778 WARNING "imported-file.svelte" 0:37 "Component has unused export property 'prop'. If it is for external reference only, please consider using `export const prop`"

引数がmachine-verboseの場合、ファイル名、開始行と列番号、終了行と列番号、エラーメッセージ、診断コード、コードの人間が読みやすい説明、診断の人間が読みやすいソース(例:svelte/typescript)が示されます。ファイル名はワークスペースディレクトリ相対です。各診断はタイムスタンプでプレフィックスされたndjson行として表されます。例:

1590680326283 {"type":"ERROR","fn":"codeaction.svelte","start":{"line":1,"character":16},"end":{"line":1,"character":23},"message":"Cannot find module 'blubb' or its corresponding type declarations.","code":2307,"source":"js"}
1590680326778 {"type":"WARNING","filename":"imported-file.svelte","start":{"line":0,"character":37},"end":{"line":0,"character":51},"message":"Component has unused export property 'prop'. If it is for external reference only, please consider using `export
const prop`","code":"unused-export-let","source":"svelte"}

出力は、チェック中に遭遇したファイル、エラー、および警告の合計数を要約するCOMPLETEDメッセージで終了します。例:

1590680326807 COMPLETED 20 FILES 21 ERRORS 1 WARNINGS 3 FILES_WITH_PROBLEMS

ランタイムエラーが発生した場合、このエラーはFAILUREレコードとして表示されます。例:

1590680328921 FAILURE "Connection closed"

クレジット

  • svelte-checkの基礎を築いたVueのVTI

よくある質問 (FAQ)

なぜ特定のファイル(たとえばステージングされたファイルのみ)をチェックするオプションがないのですか?

svelte-checkは、チェックが有効になるためにプロジェクト全体を「見る」必要があります。例えば、コンポーネントプロパティの名前を変更しましたが、そのプロパティが使用されている場所の更新を忘れた場合、使用サイトはすべてエラーになりますが、変更されたファイルのみをチェックするとこれらを見逃すことになります。

Edit this page on GitHub

previous next