ESListプロファイル

5670 ワード

ESlintは、完全に構成可能に設計されています.これは、基本的な文法検証を実行するだけでなく、各ルールをオフにしたり、ESLINEのデフォルトバインディングのルールをミックスしたり、あなたのカスタムルールに合わせたりすることができます.二つの主要な方法で構成されています.
  • Configration Comments-JavaScript注釈を用いて構成情報を直接コードソースファイルに埋め込む.
  • /*eslint for-direction: "error"*/
    for (var i = 0; i < 10; i--) {
    }
    
  • Configration Files-JavaScript、JSONまたはYAMLファイルを使用して、全体のディレクトリ(あなたのメインディレクトリを処理します)とそのサブディレクトリに設定情報を指定します.独立した.eslintrc.*[.eslintrc.js or.eslintrc.json or.eslintrc.yml or.eslintrc.eslintrc.yaml]ファイルを設定するか、またはpackage.jsonファイルのeslintConfigフィールドに直接配置を指定するか、ESLintはそれらを検索して自動的に読み取ります.さらに、コマンドラインの実行時に任意の構成ファイルを指定することができます.
  • あなたがメインディレクトリ(通常は~/)に設定ファイルがある場合、ESLintは他の構成ファイルが見つからない時だけ使用します.多くの情報が設定できます.
    Evironments-スクリプトの実行環境を指定します.各環境には、グローバル変数の特定のセットがあります.Globals-スクリプトは実行中にアクセスする追加のグローバル変数です.Rules-有効なルールとそれぞれのエラーレベル.これらのすべてのオプションは、あなたがESLINEのコードをどのように扱うかを細かい粒度でコントロールすることができます.
    Specifying Paser Options指定解析パラメータESLINEは、デフォルトではECMAScript 5をサポートしています.ECMAScriptの他のバージョンとJSXのサポートを有効にするために、この設定をカスタマイズしてカバーすることができます.
    注意
    JSX文法へのサポートはReactのサポートには使用されません.Reactは特定のESLINEでは認識できないJSX文法をいくつか使用しています.Reactを使っていますが、Reactの意味をサポートしたいなら、eslint-plugin-reactを使うことをお勧めします.{ "parserOptions": { "ecmaVersion": 6 } }を使用して、ES 6シンタックスサポートを有効にします.新しいES 6グローバル変数を追加的にサポートするには、{ "env":{ "es6": true } }を使用します.この設定は同時にES 6シンタックスサポートを自動的に有効にします.
    パーザーOptions属性を使って解析器を設定すると、利用可能なオプションがあります.
  • ecmaVersion-3に設定して、5(デフォルト)に設定して、6、7、8または9を使って、あなたが使いたいECMAScriptバージョンを指定してもいいです.使用年名のバージョン番号で2015(同6)、2016(同7)、または2017(同8)または2018(同9)
  • に指定することもできます.
  • sourceType-"script"(デフォルト)または"module"(あなたのコードがECMAScriptモジュールの場合)に設定します./エクスポートされたmodule
  • を導入します.
  • ecmaFeatures-これはオブジェクトで、あなたが使用したい言語の追加の特性を表しています.パラメータは以下の通りです.
  • globalReturn-グローバルスコープでreturnステートメント
  • を使用することができます.
  • impliedStrict-大域strict modeを有効にする(ecmaVersionが5以上の場合)
  • jsx-JSX
  • を有効にする
  • experimentalObjectRestSpread-実験的なobject/spread propertiesサポートを有効にします.
  • .eslintrc.jsonファイルの例:
    {
        "parserOptions": {
            "ecmaVersion": 6,
            "sourceType": "module",
            "ecmaFeatures": {
                "jsx": true
            }
        },
        "rules": {
            "semi": 2
        }
    }
    
    解像度を設定すると、ESLintは解析エラーとは何かを確認してくれます.すべての言語オプションはデフォルトでfalseです.
    Specifying Paser指定解像器
    ESLintはデフォルトでEspreeをその解像器として使用していますが、設定ファイルでは異なる解像度を指定できます.
  • は、ローカルにインストールされたnpmモジュールでなければなりません.
  • Esprima対応のインターフェースが必要です.parse()方法を出力しなければなりません.
  • Esprima対応のASTとtokenオブジェクトを生成しなければなりません.
  • 以下の解像度はESLINEと互換性があります.
  • Esprima
  • Babel-ESLint-Babel解像器のパッケージは、ESLintと互換性があります.
  • typescript-eslint-parser(実験)-TypeScriptをESTree互換フォーマットに変換した解像器はESListで使用できます.これはESLintでTypeScriptファイルを解析する目的です. , , ESLint ECMAScript 5 , parserOptions 。 parserOptions, 。Specifying Evironments指定環境変数
    環境によって定義されたグローバル変数のセットが定義されています.
    browser-ブラウザ環境におけるグローバル変数.node-Node.jsグローバル変数とNode.jsスコープ.詳細は以下の通りです.https://eslint.bootcss.com/docs/user-guide/configuring/#configuration-file-formas , 。は、あなたのJavaScriptファイルにコメントを使って環境を指定します.フォーマットは以下の通りです.
    /* eslint-env node, mocha */
     ...    
    
    設定ファイルに環境を指定するには、envキーを使って、あなたが有効にしたい環境を指定し、それらをtrueに設定します.例えば、以下の例では、browserとNode.jsの環境が有効になります.
    {
        "env": {
            "browser": true, //  window,document           
            "node": true
        }
    }
    
    またはpackage.jsonファイルで:
    {
        "name": "mypackage",
        "version": "0.0.1",
        "eslintConfig": {
            "env": {
                "browser": true,
                "node": true
            }
        }
    }
    
    YAMLファイルで:
    ---
      env:
        browser: true
        node: true
    
    特定のプラグインでプラグイン名を指定しておくと、環境名がインストールされています.その後、env設定でプレフィックスなしのプラグイン名の後に続く/環境名が続きます.
    {
        "plugins": ["example"],
        "env": {
            "example/custom": true
        }
    }
    
    またはpackage.jsonファイルに
    {
        "name": "mypackage",
        "version": "0.0.1",
        "eslintConfig": {
            "plugins": ["example"],
            "env": {
                "example/custom": true
            }
        }
    }
    
    YAMLファイルで:
    ---
      plugins:
        - example
      env:
        example/custom: true
    
    Configring Pluginsプラグインの設定
    ESLintはサードパーティプラグインの使用をサポートしています.プラグインを使う前にnpmでインストールしてください.
    設定ファイルにプラグインを設定する場合は、プラグイン名のリストをplugisキーで保存することができます.プラグイン名は、eslint-plugin-プレフィックスを省略することができます.
    plugins:-plugin 1-eslint-plugin-plugin 2注意:Node.jsのrequire関数の動作のため、グローバルにインストールされたESLintインスタンスは、グローバルにインストールされたESLintプラグインのみが使用され、ローカルにインストールされたバージョンは、ローカルにインストールされたプラグインのみが使用されます.ローカルおよびグローバルプラグインはサポートされません.
    Configration File Formatsプロファイル
    ESLintはいくつかのフォーマットのプロファイルをサポートします.
    JavaScript-を使用して.eslintrc.jsを出力します.YAML-を使用して.eslintrc.yamlまたは.eslintrc.ymlを使用して構成の構造を定義します.JSON-を使用して.eslintrc.jsonを使用して構成の構造を定義します.ESLintのJSONファイルはJavaScriptスタイルの注釈を許可します.-使用.eslintrcは、JSONをYAMLにすることができます.package.json-package.jsonにeslintConfig属性を作成します.そこであなたの構成を定義します.同じディレクトリの下に複数のプロファイルがあれば、ESLintは一つだけ使用します.優先順位は以下の通りです.
    .eslintrc.js.eslintrc.yaml.eslintrc.yml.eslintrc.json.eslintrc package.json