একটি নির্দিষ্ট ফাইলের জন্য এসলিন্ট নিয়ম বন্ধ করা


404

পুরো ফাইলটির জন্য এসলিন্ট নিয়মটি বন্ধ করা কি সম্ভব? যেমন কিছু:

// eslint-disable-file no-use-before-define 

(এসলিন্ট-অক্ষম-রেখার সাথে সমান।) এটি আমার প্রায়শই ঘটে যায় যে একটি নির্দিষ্ট ফাইলে, আমি অনেক জায়গাতে একটি নির্দিষ্ট নিয়ম ভঙ্গ করি যা সেই ফাইলটির জন্য ঠিক হিসাবে বিবেচিত হয়, তবে আমি অক্ষম করতে চাই না পুরো প্রকল্পের জন্য নিয়ম করুন বা সেই নির্দিষ্ট ফাইলের জন্য আমি অন্য নিয়মগুলি অক্ষম করতে চাই না।


1
আপনি ফাইলের প্রথম লাইন হিসাবে কোনও নিয়ম যুক্ত করতে পারেন: / * এসলিন্ট-আগে-সংজ্ঞা-
বিহীন

2
নিখুঁত, যে কাজ করে, আপনাকে ধন্যবাদ। আমি ডক্সের বিভাগটি স্রেফ উপেক্ষা করেছি: eslint.org/docs/user-guide/configuring.html#configuring-rules
টমাস কুলিচ

উত্তর:


404

আপনি ফাইলের শীর্ষে কনফিগারেশন স্থাপন করে কোনও ফাইলের জন্য একটি নির্দিষ্ট নিয়ম বন্ধ / পরিবর্তন করতে পারেন।

/* eslint no-use-before-define: 0 */  // --> OFF

or

/* eslint no-use-before-define: 2 */  // --> ON

অধিক তথ্য


8
ফাইলের শীর্ষে এই জাতীয় .eslintrcসমস্ত নির্দিষ্ট নির্দিষ্ট বিধি প্রয়োগ করে এমন কোনও নিয়ম রাখার কি উপায় আছে ?
জেরেমি

9
@ জেরেমি আমার উত্তর দেখুন। .eslintignoreআপনার প্রকল্পের মূল ডিরেক্টরিতে আপনাকে কেবল একটি ফাইল যুক্ত করতে হবে।
প্রগ্রেহামার

কিভাবে একটি এইচটিএমএল অথবা একটি ejs ফাইল কাজ বলে মনে হয় না যে, সম্পর্কে .eslintignoreএবং /* eslint no-use-before-define: 0 */ // --> OFFপারেন?
জিত

এক লাইনে একাধিক উপেক্ষা করা কি সম্ভব?
cheshireoctopus

4
আমি চেষ্টা করেছি / * এসলিন্ট-অক্ষম করা নিয়ম নাম * / এবং এটি কাজ করেছিল
মার্কোস পেরেইরা

304

ফাইলটির জন্য একটি নির্দিষ্ট নিয়ম অক্ষম করতে:

/* eslint-disable no-use-before-define */

দ্রষ্টব্য এসলিন্টে একটি বাগ রয়েছে যেখানে একক লাইনের মন্তব্য কাজ করবে না -

// eslint-disable max-classes-per-file
// This fails!

এই পোস্টটি দেখুন


28
এটি সেই ব্লকের মধ্যে থাকা সমস্ত এসলিন্টের নিয়মকে অক্ষম করে দেবে, কেবল no-use-before-defineউপেক্ষা করার উদ্দেশ্যে নয়
জেরেমি

13
মূলত এটি সম্পূর্ণ ধারণা। প্রশ্নটি হল " পুরো ফাইলটির জন্য এসলিন্টের নিয়মটি বন্ধ করা কি সম্ভব ?"
ওয়াহোম

27
@ বাহোম " পুরো ফাইলটির জন্য এস্লিন্ট নিয়মটি বন্ধ করা কি সম্ভব ?" বিধি শব্দটি একবচন । আপনার উত্তরটি সমস্ত বিধি বহুবচন বন্ধ করে দেয় ।
spencer.sm

8
বর্ণনায় তিনি উল্লেখ করেছেন যে তিনি নির্দিষ্ট নিয়ম নিষ্ক্রিয় করার মতো মনোযোগ চান- আবার প্রশ্নটি পড়ুন!
মারওয়েন ট্রাবেলসি

5
এটি সত্য, এটি পুরো প্রশ্নের সমাধান করে না, তবে এখনও একটি দরকারী উত্তর যেহেতু "এসলিন্ট ফাইল উপেক্ষা করুন" গুগল করার সময় এই থ্রেডটি শীর্ষ ফলাফল
রবিন ম্যাট্রাল ২

143

আপনি আপনার প্রকল্পের মূল ডিরেক্টরিতে একটি ফাইল তৈরি করে নির্দিষ্ট ফাইল এবং ডিরেক্টরিগুলি উপেক্ষা করতে ESLint কে বলতে পারেন .eslintignore:

.eslintignore

build/*.js
config/*.js
bower_components/foo/*.js

উপেক্ষা নিদর্শন .gitignoreস্পেসিফিকেশন অনুযায়ী আচরণ করে । (আপনার সম্পাদক পুনরায় চালু করতে ভুলবেন না।)


10
এই ফাইলটিতে কেবলমাত্র নির্দিষ্ট বিধিগুলি উপেক্ষা করা সম্ভব?
জে হিস্টার

আমি upvote করব কিন্তু নীচে আমার উত্তর কম স্কোর আছে: ডি
OZZIE

2
খুব সুন্দর! আপনি ডিরেক্টরি, উপ ডিরেক্টরি, সাব-ডাইরেক্টরিগুলিতে ** ব্যবহার করে পুনরাবৃত্তভাবে ফাইলগুলি যুক্ত করতে পারেন। উদাহরণস্বরূপ: spec/javascripts/**/*.js
ভিক্টর

নিখুঁত - এটি স্বয়ংক্রিয়ভাবে উত্পন্ন এবং ঘন ঘন পরিবর্তিত হওয়া ফাইলগুলির জন্য বিশেষভাবে কার্যকর (যেমন আপনি যদি ডাব্লুএস এর পরিবর্ধক বা মোবাইল হাব ব্যবহার করছেন)
বোগান 27

এটি এখনও একটি সতর্কতা দেয়
ড্যান-ক্লাসন

117

আপনি এই জাতীয় নিয়মকে অক্ষম / সক্ষম করতে পারেন:

/* eslint-disable no-use-before-define */
... code that violates rule ...
/* eslint-enable no-use-before-define */

অনুরূপ eslint-disable-lineযেমন প্রশ্নে আপনাকে উল্লেখ করেছে। এটি পুনরায় সক্ষম করার সময় কোনও জটিল নিয়ম কনফিগারেশনটি পুনরুদ্ধার করতে না চাইলে এটি আরও ভাল পদ্ধতি হতে পারে।


আমি এটি পছন্দ করি, কারণ এটি আমার এসলিন্ট কনফিগারেশনে সংজ্ঞায়িত স্তরের (সতর্কতা, ত্রুটি) পুনরুদ্ধার করে।
জাঙ্কাপঙ্ক্ট

এটি আমার জন্য কাজ করা সমাধান। নিয়মটি চালু করা এবং কাজ করা হয়নি।
জোশজয়ে

65

আপনি (সমস্ত, বা কিছু) উপেক্ষা করতে চান এমন নিয়ম এবং এটি (লাইন (গুলি), ফাইল (গুলি), সর্বত্র) অক্ষম করার সুযোগের ভিত্তিতে আমাদের কাছে 2 × 3 = 6 কেস রয়েছে।


1) "সমস্ত বিধি" অক্ষম করা হচ্ছে

কেস 1.1: আপনি "এক বা একাধিক লাইনের" জন্য "সমস্ত বিধি" অক্ষম করতে চান

Put `/* eslint-disable-line */` at the **end of the line(s)**, 
or `/* eslint-disable-next-line */` right **before the line**.

কেস ১.২: আপনি "একটি ফাইল" এর জন্য "সমস্ত বিধি" অক্ষম করতে চান

Put the comment of `/* eslint-disable */` at the top of the file.

কেস 1.3: আপনি "কিছু ফাইল" এর জন্য "সমস্ত বিধি" অক্ষম করতে চান

এটি করার জন্য 3 টি উপায় রয়েছে:

  1. আপনি 1.2 এর সাথে যেতে পারেন এবং /* eslint-disable */একের পর এক ফাইলের উপরে যুক্ত করতে পারেন ।
  2. আপনি ফাইলের নাম এতে লাগাতে পারেন .eslintignore। এটি ভালভাবে কাজ করে বিশেষত যদি আপনার এমন কোনও পথ থাকে যা আপনি উপেক্ষা করতে চান। (যেমন apidoc/**)
  3. বিকল্পভাবে, আপনি যদি আলাদা .eslintignoreফাইল রাখতে না চান তবে "eslintIgnore": ["file1.js", "file2.js"]আপনি এখানেpackage.json নির্দেশ অনুসারে যুক্ত করতে পারেন ।

2) "কিছু বিধি" অক্ষম করা হচ্ছে

কেস ২.১: আপনি "এক বা একাধিক লাইনের" জন্য "কিছু বিধি" অক্ষম করতে চান

You can put `/* eslint-disable-line quotes */` (replace `quotes` with your rules) at the end of the line(s), 
or `/* eslint-disable-next-line no-alert, quotes, semi */` before the line.

কেস ২.২: আপনি "একটি ফাইল" এর জন্য "কিছু বিধি" অক্ষম করতে চান

Put the `/* eslint-disable no-use-before-define */` comment at the top of the file.  

আরও উদাহরণ এখানে

## কেস 2.3: আপনি "কিছু ফাইল" এর জন্য "কিছু বিধি" অক্ষম করতে চান

এটি কম সোজা-এগিয়ে। এখানে নির্দেশ অনুসারে আপনার সেগুলি আপনার বিভাগের "excludedFiles"বিষয়বস্তুতে রাখা উচিত ।"overrides".eslintrc


4
পুনশ্চ. কেস 5: আপনি "সমস্ত ফাইল" এর জন্য "সমস্ত বিধি" অক্ষম করতে চান - npm uninstall eslint! : পি
আইডিন

2
এছাড়াও নোট করুন যে আপনি কেবল /* */স্টাইল মন্তব্য ব্যবহার করতে পারেন eslint-disable// eslint-disable no-use-before-defineকাজ করবে না। এটি // eslint-disable-next-lineযদিও জন্য কাজ করে ।
এইডিন

56

আপনার .eslintrc.js কনফিগারেশন ফাইলে "ওভাররাইড" যুক্ত করা ভাল। উদাহরণস্বরূপ, যদি আপনি অ্যাকশনগুলিতে শেষ হওয়া সমস্ত জেএস ফাইলের জন্য ক্যামেলকেস নিয়ম অক্ষম করতে না চান তবে .eslintrc.js এ নিয়মের সুযোগের পরে এই কোডটি যুক্ত করুন।

"rules": {    
...........    
},
"overrides": [
 {
  "files": ["*Actions.js"],
     "rules": {
        "camelcase": "off"   
     }
 }
]

এটি নির্দিষ্ট ফাইল সম্পর্কে ওপির প্রশ্নের উত্তর দেয় না।
wscourge

এটি ফাইল-এ করার দুর্দান্ত বিকল্প।
জোসেফ এঞ্জেলফ্রস্ট

8
বিশালভাবে অপরিবর্তিত উত্তর!
আদম

দুর্দান্ত কাজ! আইএমএইচও এটি গ্রহণযোগ্য উত্তর হওয়া উচিত। এই পদ্ধতিতে eslintrc ফাইলে থাকে (উত্স ফাইলগুলি পরিষ্কার রাখে) এবং নির্দিষ্ট ফাইলগুলির জন্য নির্দিষ্ট নিয়মের আচরণকে ওভাররাইড করতে পারে। +1
একাগিক্সেক্সার

48

আপনার ফাইলে সাময়িকভাবে নিয়ম সতর্কতাগুলি অক্ষম করতে, নীচের ফর্ম্যাটে ব্লক মন্তব্যগুলি ব্যবহার করুন:

/* eslint-disable */

এটি ESLint অক্ষম করবে until

/* eslint-enable */

মন্তব্য পৌঁছেছে।

আপনি এখানে এই বিষয় সম্পর্কে আরও পড়তে পারেন ।


36

গৃহীত উত্তর আমার পক্ষে কার্যকর হয়নি (সম্ভবত এসলিন্টের ভিন্ন সংস্করণ ...? আমি ব্যবহার করছি eslint v3.19.0), তবে নিম্নলিখিতগুলির সাথে একটি সমাধান খুঁজে পেয়েছি ...

নিম্নলিখিতটি আপনার ফাইলের শীর্ষে রাখুন

/* eslint-disable no-use-before-define */

এটি পুরো ফাইলটির নিয়ম অক্ষম করবে


7
... বা একাধিক, যেমন/* eslint-disable no-unused-vars, no-console, import/no-extraneous-dependencies, spaced-comment */
ফ্রাঙ্ক নোক

1
একই একই, গৃহীত উত্তর আমার পক্ষে কাজ করে না। দুটি পার্থক্য: পরিবর্তন eslintকরা eslint-disableএবং নামানো : 0। Eslint@4.19.1 ব্যবহার করে।
হেল্লাতান

10
/*eslint-disable */

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

/*eslint-enable */

এটা আমার জন্য কাজ করে


4
এটি সেই ব্লকের মধ্যে থাকা সমস্ত এসলিন্টের নিয়মকে অক্ষম করে দেবে, কেবল no-use-before-defineউপেক্ষা করার উদ্দেশ্যে নয়
জেরেমি

এটি আমাকে সাহায্য করেছে, ধন্যবাদ! এই প্রশ্নেরও উত্তরটি বিবেচনা করুন, সমস্ত বিধি নিষ্ক্রিয় করাও নিয়মিত নিয়মটি অক্ষম করে
ফাবিয়ানো সোরিয়ানী

7

আপনি কেবল ফাইলের শীর্ষে উদাহরণস্বরূপ এটি রাখতে পারেন:

/* eslint-disable no-console */

1

আপনি কোনও ফাইল ব্যবহার করে নির্দিষ্ট নিয়ম বন্ধ করতে পারেন /*eslint [<rule: "off"], >]*/

/* eslint no-console: "off", no-mixed-operators: "off" */

সংস্করণ: eslint@4.3.0


কেবলমাত্র একটি সম্পূর্ণ ফাইলের জন্য একটি নিয়ম অক্ষম করার প্রয়োজনে এটি পুরোপুরি সূক্ষ্মভাবে কাজ করেছে।
উমাকান্ত পাতিল

0

নীচের মতো গ্লোব প্যাটার্নের সাথে মেলে এমন নির্দিষ্ট নিয়মগুলি বন্ধ করতে আপনি এসলিন্ট ওভাররাইড বৈশিষ্ট্যটি কনফিগার করতে পারেন।

এখানে, আমি no-duplicate-stringসমস্ত ফাইল পরীক্ষার জন্য নিয়মটি বন্ধ করতে চাই ।

overrides: [
  {
    files: ["**/__tests__/**/*.[jt]s?(x)", "**/?(*.)+(spec|test).[jt]s?(x)"],
    rules: {
      'sonarjs/no-duplicate-string': 'off'
    }
  }
]
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.