ESLintrc Üreticisi
Bu üretici, dört seçimden kullanıma hazır bir .eslintrc.json yapılandırması oluşturur: tarayıcı veya Node ortamı, TypeScript desteği ve React desteği. eslint:recommended, seçiminize uygun TypeScript veya React eklentileri ve birkaç mantıklı kural geçersiz kılmasını bir araya getirir, böylece sonucu doğrudan projenize yapıştırabilirsiniz.
ESLint yapılandırması nasıl oluşturulur?
-
1
Ortamı seçin
Kodun tarayıcıda mı, Node.js içinde mi yoksa her ikisinde mi çalıştığını belirleyin. Üretici, ilgili `env` girdilerini ve `es2022`yi ayarlar.
-
2
TypeScript'i etkinleştirin
TypeScript'i işaretleyin; üretici `@typescript-eslint/parser` ve önerilen TypeScript eklentisini ekler.
-
3
React'i etkinleştirin
React'i işaretleyin; üretici, önerilen ön ayarıyla birlikte `eslint-plugin-react` ekler.
-
4
Oluşturun
Düğmeye tıklayın ve yapılandırma, düzenli biçimlendirilmiş JSON olarak oluşturulur.
-
5
Projenize kopyalayın
Çıktıyı `.eslintrc.json` dosyasına yapıştırın ve yapılandırmanın referans verdiği eklentileri kurun.
Oluşturulan yapılandırma neleri içerir
Üretici her zaman eslint:recommended ile başlar ve seçimlerinizin gerektirdiği şeyleri tam olarak ekler:
browserve/veyanodeiçerenenv, ayrıcaes2022- TypeScript açıkken
@typescript-eslint/parserveplugin:@typescript-eslint/recommended - React açıkken
plugin:react/recommended warnolarak ayarlananno-consoleveno-unused-vars
Çıktı, klasik .eslintrc.json biçiminde sade bir JSON nesnesidir; yapıştırıp kendi kurallarınızla genişletebilirsiniz.
Düz yapı vs. Eski yapı
ESLint, .eslintrc.* formatını yerine düz yapılandırma (eslint.config.js) benimseyerek geri çekti. Ana farklar şunlardır:
| Konu | Eski (.eslintrc) | Düz (eslint.config.js) |
|---|---|---|
| Biçim | JSON, YAML veya CommonJS | ESM veya CommonJS JavaScript modülü |
| Genişletme | extends: ["plugin:react/recommended"] |
Diziye yayma: ...reactPlugin.configs.recommended |
| Geçersiz kılmalar | Glob desenleri içeren overrides dizisi |
Dışa aktarılan dizide birden fazla nesne |
| Global değişkenler | env: { browser: true } |
Açık import içeren languageOptions.globals |
| Yok sayma | .eslintignore dosyası |
Yapılandırma dizisindeki ignores alanı |
Yeni projeler düz yapıyı kullanmalıdır. Mevcut projeler 10.x serisi boyunca eski yapıda kalabilir; ancak migrasyon önerilir.
Eklenti ekosistemi
Tipik React/TS proje eklentileri:
@typescript-eslint/eslint-plugin
@typescript-eslint/parser
eslint-plugin-react
eslint-plugin-react-hooks
eslint-plugin-jsx-a11y
eslint-plugin-import
eslint-config-prettier
Bu, orta düzeyde bir görüşe sahip bir yapı için altı paketten oluşur. Üretici yalnızca seçtiklerinizi ekler; böylece yapılandırmanın referans verdiği şeyleri kurarsınız.
Prettier ile bir arada çalışma
Prettier biçimlendirmeyi yönetir; ESLint ise biçimlendirmenin ötesinde doğruluk ve stil konularını ele alır. Çakışmaları önlemek için:
eslint-config-prettierpaketini yükleyin ve onu extends/config dosyanızdaki SON öğe olarak ekleyin.- Prettier’in çıktısıyla çelişen tüm ESLint kurallarını devre dışı bırakır.
- Prettier’i ayrı olarak çalıştırın (düzenleyicide kaydederken, pre-commit kancasında veya CI sürecinde).
eslint-plugin-prettier paketini yeni projelerde kullanmayın; bu araç ESLint içinde Prettier’i çalıştırarak ESLint’i yavaşlatır. İki aracı birbirinden ayrı tutun.
Kuralların ayarlanması için ipuçları
- Gevşek başlayın, kademeli olarak sıkılaştırın. Hatalardan önce uyarıları etkinleştirin.
- Testler için geçersiz kılın. Test dosyaları genellikle
no-unused-expressionskuralının gevşetilmesini ve Jest global değişkenlerinin kullanılabilir olmasını gerektirir. - Betikler için geçersiz kılın. Derleme betikleri,
env: nodegenel olarak eklenmeden Node global değişkenlerine ihtiyaç duyabilir. - Geçersiz kılmaları belgeleyin. Her kural geçersiz kılma, nedenini açıklayan bir yorumu hak eder.
Düzenleyicinizle uyumlu yapılandırma
VS Code için ESLint uzantısının yüklü ve yapılandırılmış olması gerekir. Kaydederken otomatik düzeltme için bunları çalışma alanı ayarlarınıza ekleyin:
{
"editor.codeActionsOnSave": { "source.fixAll.eslint": "explicit" },
"eslint.validate": ["javascript", "typescript", "javascriptreact", "typescriptreact"]
}
Sık Sorulan Sorular
Yeni projeler için düz yapılandırma (eslint.config.js) kullanın. Bu üretici, ESLint’in eski modda doğrudan okuduğu klasik .eslintrc.json biçimini üretir; daha sonra geçiş yaparsanız nelerin değişeceğini yukarıdaki karşılaştırma tablosu gösterir.
Evet, TypeScript kullanıyorsanız. @typescript-eslint/parser ve @typescript-eslint/eslint-plugin, TypeScript’e uyumlu düzeltme işlevselliğini destekler. Sadece sözdizimi değil, tip bilincine dayalı kurallar için de analizleyiciyi project: './tsconfig.json' ile yapılandırın.
Genellikle CI’de gerekli bağımlılık dosyaları eksik olur. Yerel ortam ile CI’deki @typescript-eslint/*, eklentiler ve ESLint sürümünün uyumlu olduğundan emin olun. Lockfile’i korumak için CI’de npm ci’yi (npm install yerine) kullanın.
Hayır. Seçimleriniz yalnızca yapılandırmayı oluşturmak için kullanılır; kaydedilmez ve üçüncü taraflarla paylaşılmaz.
İlgili Araçlar
ASCII Tablosu Referansı
NUL, LF ve DEL dahil her kod için ondalık, onaltılık, sekizlik ve ikili değerlerle HTML sayısal karakter başvurusu gösterimini sunan tam ASCII tablosu.
HTML Karakter Referansı
HTML varlıklarının aranabilir listesi; adlandırılmış ve sayısal kodlarıyla birlikte özel karakter ve semboller için tek tıkla kopyalama.
Klavye kısayolları başvurusu
macOS, Windows ve Linux’ta VS Code, Chrome ve GNU Readline kullanan Bash için belgelenmiş varsayılan kısayolları arayın.
EditorConfig Oluşturucu
Girinti stili ve boyutu, satır sonu, karakter kümesi ve boşluk kurallarınızla bir .editorconfig dosyası oluşturarak IDE ve editörler arasında tutarlı biçimlendirme sağlayın.
E-posta Doğrulayıcı
Bir e-posta adresini doğrulayın: RFC 5322 sözdizimi kontrolü, canlı MX kaydı sorgulama, ayrıca yerel kısım, alan adı ve uzunluk bilgileri. Hiçbir e-posta gönderilmez.
Gradyan Duvar Kağıdı Oluşturucu
Dizüstü bilgisayar, telefon veya Zoom arka planları için bulanık üç renkli gradyan duvar kağıtları oluşturun. Açıyı ve bulanıklığı rastgele belirleyin ya da elle ayarlayın.
Araç diğer dillerde mevcuttur
- Gerador de ESLintrc [PT]
- Bộ tạo ESLintrc [VI]
- Generador de ESLintrc [ES]
- ESLintrc ジェネレーター [JA]
- مولد ESLintrc [AR]
- ESLintrc-generator [SV]
- Générateur d'ESLintrc [FR]
- ESLintrc-Generator [DE]
- เครื่องสร้าง ESLintrc [TH]
- ESLintrc 생성기 [KO]
- ESLintrc-generator [NL]
- Generator ESLintrc [ID]
- Generator .eslintrc [PL]
- Генератор ESLintrc [RU]
- ESLintrc生成器 [ZH]
- ESLintrc Generator [EN]
- Generatore ESLintrc [IT]