एक विशिष्ट रेखा के लिए एस्लिंट नियम को बंद करना


1344

JSHint में एक विशेष लाइन के लिए लाइनिंग नियम को बंद करने के लिए हम निम्नलिखित नियम का उपयोग करते हैं:

/* jshint ignore:start*/
$scope.someVar = ConstructorFunction();
/* jshint ignore:end */

मैं अनुलोम विलोम के लिए इसके बराबर का पता लगाने की कोशिश कर रहा हूं।


86

ESLint v7 से शुरू करके, आप दिए गए नियम को उसी टिप्पणी में अक्षम करने का कारण निर्दिष्ट कर सकते हैं
डेन डैस्कलेस्क्यू

जवाबों:


2151

अब आप सिंगल लाइन सिंटैक्स का उपयोग कर सकते हैं:

var thing = new Thing(); // eslint-disable-line no-use-before-define
thing.sayHello();

function Thing() {

     this.sayHello = function() { console.log("hello"); };

}

या यदि आप वास्तविक कोड के साथ एक ही लाइन पर टिप्पणी नहीं करना चाहते हैं, तो अगली पंक्ति को अक्षम करना संभव है:

// eslint-disable-next-line no-use-before-define
var thing = new Thing();

अनुरोधित डॉक्स लिंक: http://eslint.org/docs/user-guide/configuring.html#configuring-rules


4
अब मुझे एक और गूढ़ समस्या मिलती है: कोड न-इनलाइन टिप्पणियों के साथ अप्रत्याशित टिप्पणी इनलाइन चेतावनी :(
10

51
मेरे लिए बहुत अच्छा काम करता है। इसके अलावा यदि आप विशिष्टता के बारे में परवाह नहीं करते हैं तो आप बस कर सकते हैं //eslint-disable-lineऔर यह दिए गए लाइन के लिए सभी नियमों को अक्षम करता है।
खलीलरावण

7
किसी कारण से यह मेरे लिए काम नहीं करता है; मैं 3.8.0 एस्लिंट चला रहा हूं। मुझे / * eslint- अक्षम * / और / * eslint-enable * / का उपयोग करना होगा। किसी भी विचार क्यों यह हो सकता है? मुझे सिंगल लाइन अप्रोच
समथिंगऑन पसंद है

8
@SomethingOn के पास भी यही समस्या थी, मैं --no-inline-configनिकला था, जो किPrevent comments from changing config or rules
टिबाल्ट था

4
"गुल-एस्लिंट" के साथ काम नहीं कर रहा है: "^ 3.0.1"। मैं उपयोग करने के लिए / * eslint-अक्षम * /
olefrank

528

आप निम्नलिखित का उपयोग कर सकते हैं

/*eslint-disable */

//suppress all warnings between comments
alert('foo');

/*eslint-enable */

जो डॉक्स के "कॉन्फ़िगरिंग रूल्स" खंड को थोड़ा दफन किया गया है ;

किसी संपूर्ण फ़ाइल के लिए चेतावनी को अक्षम करने के लिए, आप फ़ाइल के शीर्ष पर एक टिप्पणी शामिल कर सकते हैं

/*eslint eqeqeq:0*/

अपडेट करें

ESlint को अब एकल लाइन को अक्षम करने के बेहतर तरीके से अपडेट किया गया है, @ goofballLogic का उत्कृष्ट उत्तर देखें


5
BTW, ऐसा लगता है कि //टिप्पणी वाक्य रचना काम नहीं करती है ...
MonsieurDart

इसके अलावा एक साइड नोट, मैं html में एक पंक्ति के लिए एस्लिंट को अक्षम करने के लिए देख रहा था। यह काम करता है: थम्सअप:
आदिल एच। रज़ा

221

आप किसी विशिष्ट नियम / नियम (सभी के बजाय) को सक्षम (खुले) और अक्षम (बंद) ब्लॉकों में निर्दिष्ट करके अक्षम कर सकते हैं:

/* eslint-disable no-alert, no-console */

alert('foo');
console.log('bar');

/* eslint-enable no-alert */

ऊपर @ goofballMagic के लिंक के माध्यम से: http://eslint.org/docs/user-guide/configuring.html#configuring-rules


6
सुनिश्चित करें कि आपकी अनुगूँज टिप्पणियाँ एस्लेंट पास करें! -> Expected exception block, space or tab after '/*' in comment.:)
रिमीयन

मैं अपने कोड को प्रारूपित करने के लिए prettierऔर संयोजन का उपयोग eslintकरता हूं। यह इनलाइन टिप्पणियों के लिए अनुमति नहीं देता है। कई /* eslint-disable-next-line ... */बयानों को पढ़ना मुश्किल है और कोड में स्पॉट करना है।
बर्नहार्ड डब्लर

77

ESLint को कॉन्फ़िगर करने से - इनलाइन टिप्पणियों के साथ नियमों को अक्षम करना :

/* eslint-disable no-alert, no-console */


/* eslint-disable */

alert('foo');

/* eslint-enable */


/* eslint-disable no-alert, no-console */

alert('foo');
console.log('bar');

/* eslint-enable no-alert, no-console */


/* eslint-disable */

alert('foo');


/* eslint-disable no-alert */

alert('foo');


alert('foo'); // eslint-disable-line

// eslint-disable-next-line
alert('foo');


alert('foo'); // eslint-disable-line no-alert

// eslint-disable-next-line no-alert
alert('foo');


alert('foo'); // eslint-disable-line no-alert, quotes, semi

// eslint-disable-next-line no-alert, quotes, semi
alert('foo');


foo(); // eslint-disable-line example/rule-name

35

उत्तर

आप इनलाइन टिप्पणी का उपयोग कर सकते हैं: // eslint-disable-next-line rule-name :।

उदाहरण

// eslint-disable-next-line no-console
console.log('eslint will ignore the no-console on this line of code');

संदर्भ

ESLint - इनलाइन टिप्पणियों के साथ नियमों को अक्षम करना


31

लाइन टिप्पणी का सामान्य अंत, // eslint-disable-lineइसके बाद कुछ भी ज़रूरत नहीं है: ईएस लिंट को अनदेखा करने के लिए आप क्या चाहते हैं, यह निर्दिष्ट करने के लिए एक कोड देखने की आवश्यकता नहीं है।

यदि आपको किसी त्वरित डिबगिंग के अलावा किसी भी कारण से किसी भी वाक्यविन्यास को अनदेखा करने की आवश्यकता है, तो आपको समस्याएँ हैं: अपने delint config को अपडेट क्यों नहीं करना चाहिए?

मुझे एक सेवा के त्वरित निरीक्षण के // eslint-disable-lineलिए सम्मिलित करने की अनुमति देने का आनंद मिलता है console, बिना मेरे विकास के वातावरण ने मुझे प्रोटोकॉल के उल्लंघन के कारण वापस पकड़ लिया। (मैं आमतौर पर प्रतिबंध लगाता हूं console, और लॉगिंग क्लास का उपयोग करता हूं - जो कभी-कभी बनाता है console।)


कोई अपराध नहीं है, लेकिन यह स्वीकार किए जाते हैं जवाब के रूप में एक ही समाधान है, तो यकीन नहीं है कि यह कैसे मदद करता है?
एक दर्रे

25
यह मत करो। यदि आपके पास पंक्ति में 5 त्रुटियां हैं, तो वे सभी को अनदेखा कर दिया जाएगा। हमेशा स्पष्ट रूप से नियम निर्धारित करें जिसे अनदेखा करना है या बच्चों को गड़बड़ करना होगा।
फिलिप डुपनोविक

3
@ FilipDupanović यदि आपके प्रोग्रामर कोड की एक लाइन के भीतर गड़बड़ी कर सकते हैं, तो सिर्फ इसलिए कि एस्लिंट एक लाइन के लिए अपने कंधों पर नहीं देख रहे हैं। आपकी कंपनी में वास्तव में कुछ और गलत हो रहा है ... यह कहते हुए कि आप किस नियम को अनदेखा करना चाहते हैं, यह स्पष्ट करता है कि आपने पहली जगह में अक्षम लाइन क्यों रखी है।
एडविन स्टेलर

2
@ FilipDupanović हो सकता है कि स्पष्ट नियम की अनदेखी करने के लिए एस्केंट में एक मेटा नियम होना चाहिए? शायद यह पहले से ही करता है।
जोसेफ बी।

1
@ जोसेफ.बी इसके लिए एक गैर-मानक नियम है: github.com/sindresorhus/eslint-plugin-unicorn/blob/master/docs/… यह वास्तव में अच्छी तरह से काम करता है।
क्रेग हार्ले

13

या अगली पंक्ति में कई अनदेखी के लिए, कॉमा का उपयोग करके नियमों को स्ट्रिंग करें

// eslint-disable-next-line class-methods-use-this, no-unused-vars


6

किसी विशिष्ट लाइन पर सभी नियमों को अक्षम करने के लिए:

alert('foo'); // eslint-disable-line

1

एक पंक्ति टिप्पणी ने मेरे लिए प्रतिक्रियाशील गूंगा कार्यात्मक घटक के अंदर काम नहीं किया, मैंने फ़ाइल स्तर को अक्षम करके उपयोग किया है / * eslint- अक्षम सम्मिलित करेंEslintErrorDefinitionHere * /

(आम तौर पर यदि आप बनाम कोड का उपयोग कर रहे हैं और एस्लिंट एरर प्राप्त कर रहे हैं, तो आप उस लाइन पर क्लिक कर सकते हैं जो त्रुटि देता है और एक बल्ब बनाम कोड में दिखाई देगा, लाइट बल्ब पर राइट क्लिक करें और किसी भी अक्षम विकल्प का चयन करें और बनाम कोड इसके लिए करेगा आप।)


-5

आप अपने प्रोजेक्ट में .eslintignore फ़ाइल में त्रुटि देने वाली फ़ाइलों को जोड़ सकते हैं। सभी .vue फ़ाइलों के लिए सिर्फ /*.vue जोड़ें।


4
यह एक लाइन के लिए कहा, पूरी फाइल नहीं
केविन Danikowski

वह एस्लिंट का उपयोग करना भी बंद कर सकता है ... अगर आपका बस हर उस फ़ाइल को अनदेखा करने जा रहा है जिसमें समस्या है कि उसका उपयोग क्यों करें?
रूद वेरहोफ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.