TSLint.json構成ファイル( https://github.com/palantir/tslint )は、extends
とrulesDirectory
配列をサポートしています。
{
"extends": [
"tslint-Microsoft-contrib",
"tslint-config-security"
],
"rulesDirectory": [
"node_modules/tslint-eslint-rules/dist/rules",
"node_modules/tslint-Microsoft-contrib",
"node_modules/tslint-config-security"
]
}
ドキュメントは、ツールに不慣れな新規ユーザーにとっては、解釈に少しオープンなようです。
VSコードエディタでの使用とextends
ing全般でのrulesDirectory
とtslint
の動作について、いくつかの点を明確にしていただければ幸いです。
extends
onlyはデフォルトの構成を提供しますか(パッケージによって提供される場合)?
したがって、これはrulesDirectory
とは異なりますか?
rulesDirectory
は、具体的にオプトインするためのルールを提供するだけですか(ルートtslint.jsonでルールを指定する場合に必要です)?
tslint
パッケージをextends
とrulesDirectory
の両方で指定する必要がありますか?
extends
が別のtslint
構成ファイルからデフォルトを提供すると仮定すると、rulesDirectory
を指定して、特定のフラグを上書きするルールを追加できますか?
IntelliSenseオートコンプリートに表示されるのは一部のルールと、より明確にしていただければ幸いないくつかの動作のみであるため、懸念しています。
TSLintの
extends
とrulesDirectory
の違いは何ですか
彼らは非常に異なっています。
extends
を使用すると、既存のtslint構成を適用して拡張できますrulesDirectory
を使用すると、カスタムルールのディレクトリを追加できます。?回答: 2018年4月6日現在のtslint構成ドキュメント :
extends?: string | string[]
:組み込み構成プリセットの名前(以下の組み込みプリセットを参照)、またはこの構成によって拡張される他の構成ファイルへのパスまたはパスの配列。この値は、ノードモジュール解決セマンティクスを使用して処理されます。たとえば、"tslint-config"
の値は、TSLintに「tslint-config」という名前のモジュールのメインファイルを構成ファイルとしてロードしてロードするように指示します。ノードモジュール内の特定のファイルも指定できます。"tslint-config/path/to/submodule"
。 JSONファイルまたはJSモジュールへの相対パスもサポートされています。"./tslint-config"
。rulesDirectory?: string | string[]
:[カスタムルール] [2]のディレクトリへのパスまたはディレクトリへのパスの配列。これらの値は、index.js
がルールディレクトリに配置されている場合、ノードモジュール解決セマンティクスを使用して処理されます。モジュールが解決できない場合は、相対パスまたは絶対パスを使用するようにフォールバックします。モジュールの解決を避けたい場合は、相対パスまたは絶対パスを直接使用できます(例:./
)。
このrules
ブロックで指定されたルールは、拡張される基本構成で構成されたルールをオーバーライドします。