2016-09-15 11 views
21
$("#ID").hide(); 

私はプロジェクトにESLintを追加します。

記号$を除くすべてが問題ありません。 [eslint] '$' is not defined. (no-undef)

.eslintrc.json

私はエラーを取得eslint-plugin-dollar-signとeslint - プラグインのjQuery:

{ 
"env": { 
    "browser": true, 
    "commonjs": true, 
    "es6": true 
}, 
"extends": [ 
    "eslint:recommended" 
], 
"parserOptions": { 
    "sourceType": "module" 
}, 
"plugins": [ 
    "dollar-sign", 
    "jquery" 
], 
"rules": {  
    "indent": [ 
     "error" , 
     "tab" 
    ], 
    "linebreak-style": [ 
     "error", 
     "windows" 
    ], 
    "quotes": [ 
     "error", 
     "double" 
    ], 
    "semi": [ 
     "error", 
     "always" 
    ], 
    "jquery/no-ajax": 2, 
    "jquery/no-animate": 2, 
    "jquery/no-attr": 2, 
    "jquery/no-bind": 2, 
    "jquery/no-class": 2, 
    "jquery/no-clone": 2, 
    "jquery/no-closest": 2, 
    "jquery/no-css": 2, 
    "jquery/no-data": 2, 
    "jquery/no-deferred": 2, 
    "jquery/no-delegate": 2, 
    "jquery/no-each": 2, 
    "jquery/no-fade": 2, 
    "jquery/no-filter": 2, 
    "jquery/no-find": 2, 
    "jquery/no-global-eval": 2, 
    "jquery/no-has": 2, 
    "jquery/no-hide": 2, 
    "jquery/no-html": 2, 
    "jquery/no-in-array": 2, 
    "jquery/no-is": 2, 
    "jquery/no-map": 2, 
    "jquery/no-merge": 2, 
    "jquery/no-param": 2, 
    "jquery/no-parent": 2, 
    "jquery/no-parents": 2, 
    "jquery/no-parse-html": 2, 
    "jquery/no-prop": 2, 
    "jquery/no-proxy": 2, 
    "jquery/no-serialize": 2, 
    "jquery/no-show": 2, 
    "jquery/no-sizzle": 2, 
    "jquery/no-slide": 2, 
    "jquery/no-text": 2, 
    "jquery/no-toggle": 2, 
    "jquery/no-trigger": 2, 
    "jquery/no-trim": 2, 
    "jquery/no-val": 2, 
    "jquery/no-wrap": 2, 
    "dollar-sign/dollar-sign": [ 
     2, 
     "ignoreProperties" 
    ] 
} 

を私は2つのプラグインが追加されていることを見ることができます。

なぜこのルールは機能しませんか?

"dollar-sign/dollar-sign": [ 2, "ignoreProperties" ]

答えて

60

あなたは地球jqueryない環境が有効と宣言されていない

"env": { 
    "browser": true, 
    "commonjs": true, 
    "es6": true, 
    "jquery": true 
}, 

$が欠落しています。そのため、宣言されていない変数を使用していると、no-undefエラーが発生しています。

1

https://eslint.org/docs/user-guide/configuring#specifying-environments

次の形式を使用して、あなたのJavaScriptファイルの内部にコメントを使用する環境を指定することができます。

あなたのJavaScriptファイルの先頭にコメントとして以下の行を追加します。それはあなたがjQueryを使って作業している知っているので、

/*eslint-env jquery*/ 

eslinterは「$」に未定義投げて停止します。

関連する問題