web-dev-qa-db-ja.com

Constを使用しているとJSHintが警告を出すのはなぜですか?

これは、constを使用したときに発生するエラーです。

<error line="2" column="1" severity="warning" message="&apos;const&apos; is available in ES6 (use esnext option) or Mozilla JS extensions (use moz)." source="jshint.W104" />

私のコードはこのようになります:

const Suites = {
    Spade: 1,
    Heart: 2,
    Diamond: 3,
    Club: 4
};

JSHintが毎回私に警告しているだけで、コードはうまく動きます。

242

constのようなECMAScript 6の機能に頼るときは、JSHintが不必要な警告を出さないようにこのオプションを設定するべきです。

/ * jshint esnext:true * / 編集2015.12.29 :/を反映するように更新された構文 @ Olgaのコメント

/*jshint esversion: 6 */

const Suites = {
    Spade: 1,
    Heart: 2,
    Diamond: 3,
    Club: 4
};

このオプションは、その名のとおり、コードでECMAScript 6固有の構文が使用されていることをJSHintに伝えています。 http://jshint.com/docs/options/#esversion

編集2017.06.11 この回答に基づいて別のオプションを追加しました

インライン設定は個々のファイルに対してうまく機能しますが、プロジェクトのルートに.jshintrcファイルを作成してそこに追加することで、プロジェクト全体に対してこの設定を有効にすることもできます。

{
  "esversion": 6
}
429
James Hibbard

次の内容で .jshintrc という名前のファイルをアプリケーションの root に追加して、 全体ソリューション にこの設定を適用することができます。

{
    "esversion": 6
}

Jamesの答え each ファイルに/*jshint esversion: 6 */というコメントを追加できることを示唆していますが、多くのファイルを制御する必要がある場合は必要以上に手間がかかります。

244
Zanon

Export文を使用したときにも同じ警告が表示されます。私はVS Codeを使用しており、Wenlong Jiangのソリューションに対しても同様のアプローチを取っています。

  1. ユーザー設定
  2. JSHint設定
  3. "jshint.options": {}(編集)
  4. "esversion"を指定するときは 二重引用符 を使用してください

    または、このスニペットをユーザー設定にコピーします。

    "jshint.options": {
      "esversion": 6,
    }
    

あなたのエディタ用にグローバルjshint設定を構成したいのであれば、.jshintrcファイルを作成する必要はありません

33

私はこれを直すために何年も費やしました。どの解決策も「オプションの設定」について語っています。それがどういう意味なのかわかりません。最後に、私はそれを考え出しました。 /*jshint esversion: 6 */ファイルの先頭にコメントアウトされた行を含めることができます。

Solution

31
Josh Pittman

VSCodeを使用している場合

1.

  • 設定 - > 設定cmd + ,)に移動します
  • 検索バーに「jshint.options」と入力します。
  • その上にカーソルを置き、鉛筆アイコンをクリックしてください
  • その右側に追加されました。
  • オプションオブジェクトに"esversion": 6を追加します。

2.

または単にあなたのユーザー設定にこれを追加します。

"jshint.options": {
    "esversion": 6
}

[UPDATE]新しいvscode設定

  • 設定 - > 設定cmd + ,)に移動します
  • 検索にjshintと入力

VSCode Settings

  • ステップ2.に進みます
23
Phil

Jshintオプションオブジェクト内に esversion:6 を指定できます。画像を見てください。私はgrunt-contrib-jshintプラグインを使用しています。

enter image description here

15
Wenlong Jiang

ECMAScript 6を使い始めると、IDEによってこのエラーがスローされます。

利用可能な2つのオプションがあります。

ファイルが1つしかなくes6を使いたい場合は、ファイルの先頭に以下の行を追加してください。

/*jshint esversion: 6 */

または、jsファイルがいくつかある場合、または(nodejs expressなどの)任意のフレームワークを使用している場合は、ルートディレクトリに.jshintrcという名前の新しいファイルを作成し、そのファイルに次のコードを追加します。

{
    "esversion": 6
}

プロジェクトごとにes6以降のバージョンを使用する場合は、IDEを設定できます。

2
Prashant Barve

Grunt設定を使用している場合は、次の手順を実行する必要があります。

Jshintの警告メッセージ:

enter image description here

解決策:

  1. Jshintオプションを設定し、.jshintrc.jsファイルをマップします。

enter image description here

  1. そのファイルに.jshintrc.jsファイルを作成し、次のコードを追加します。
 {
 "逆転":6 
} [.____。

これを設定した後、再度実行すると警告がスキップされます。

enter image description here

1
Sridhar

あなたがWebstormを使っていて、あなたがあなた自身の設定ファイルを持っていないならば、それからちょうどでリラックスオプションでEcmaScript.nextを有効にしてください

設定|言語とフレームワークJavaScript |コード品質管理ツール| JSヒント

この質問を参照してください How-do-I-resolve-these-JSHint-ES6-errors

1
Sudhanshu Gaur

次の内容でjshint_optsという名前のファイルを作成します。{"esversion":6}

次に、次のようなコマンドラインでjshintを起動します。

jshint --config jshint_opts lib/*。js

0
Alan Wendt