2

Grunt で lint を使用しようとしています。コマンド ラインから Grunt を実行できますが、多くのエラーが発生します。ほとんどの場合、「' $' は定義されていません」。「alert'alert' が定義されていません」というエラーがスローされます。

どうすればそれらを回避できますか?

4

2 に答える 2

9

リントされるファイルで使用可能なグローバル変数について、JSHint(Gruntがデフォルトで使用するリンター)に通知する必要があります。私はあなたがあなたのページにjQueryを含んでいると仮定しているので、$識別子(もちろん他のさまざまなライブラリかもしれません)。

各ファイルまたはGruntスクリプトでグローバル変数を指定できます。globalそれらをファイルで指定するには、ディレクティブを使用できます。これをファイルの先頭、またはグローバルを使用する関数の先頭に配置します。

/*global $:false */

falseをオーバーライドするとエラーが発生することを意味することに注意してください$。それを行う機能が必要な場合は、に変更してtrueください。

Gruntスクリプトでグローバルを指定する場合は、セクションglobals内の任意のタスクにプロパティを追加できますjshint。例えば:

grunt.initConfig({
    jshint: {
        someTask: {
            globals: {
                $: false
            }
        }
    }
});

表示されるalertメッセージについては、やなどの開発機能の使用を許可していることをJSHintに通知する必要がありalertますconsole.log。これを行うにはjshint、ファイルでディレクティブを使用できます(ディレクティブと同じようにglobal)。

/*jshint devel:true */

optionsまたは、Gruntスクリプトでタスクにプロパティを追加できます。

someTask: {
    globals: {
        $: false
    },
    options: {
        devel: true
    }
}

利用可能なすべてのオプションについては、 JSHintのドキュメントを参照してください。

于 2013-01-11T07:41:08.507 に答える
0

globals中になければならないoptions

someTask: {
    options: {
        devel: true,
        globals: {
            $: false
        }
    }
}
于 2016-05-18T17:48:13.150 に答える