Repositori ini berisi eslint-plugin-sonarjs hingga Versi ^1.0.0 . Untuk versi >=2.0.0 silakan pergi ke repositori penganalisa Sonarjs. Versi baru eslint-plugin-sonarjs membuat semua aturan Sonarjs tersedia untuk pengguna Eslint, bukan subset seperti dengan ^1.0.0 yang tinggal di sini.
Tidak ada perubahan baru yang diharapkan mendarat di sini.
Aturan Sonarjs untuk Eslint untuk membantu pengembang menghasilkan kode bersih dengan mendeteksi bug dan pola yang mencurigakan.
Aturan dalam kategori ini bertujuan untuk menemukan tempat dalam kode yang memiliki peluang tinggi menjadi bug, yaitu tidak berfungsi sebagaimana dimaksud.
no-all-duplicated-branches )no-element-overwrite )no-empty-collection )no-extra-arguments )no-identical-conditions )no-identical-expressions )no-ignored-return ) ( tipe penggunaan )no-one-iteration-loop )no-use-of-empty-return-value )non-existent-operator ) (: kunci pas: dapat diperbaiki )Bau kode, atau masalah pemeliharaan, diangkat untuk tempat -tempat kode yang mungkin mahal untuk berubah di masa depan. Aturan -aturan ini juga membantu menjaga kualitas dan keterbacaan kode tinggi. Dan akhirnya, beberapa aturan melaporkan masalah tentang pola kode mencurigakan yang berbeda.
cognitive-complexity )elseif-without-else ) ( dinonaktifkan )max-switch-cases )no-collapsible-if )no-collection-size-mischeck ) (: kunci pas: dapat diperbaiki , jenis penggunaan )no-duplicate-string )no-duplicated-branches )no-gratuitous-expressions )no-identical-functions )no-inverted-boolean-check ) (: kunci pas: dapat diperbaiki , dinonaktifkan )no-nested-switch )no-nested-template-literals )no-redundant-boolean )no-redundant-jump ) (: kunci pas: dapat diperbaiki )no-same-line-conditional ) (: kunci pas: dapat diperbaiki )no-small-switch )no-unused-collection )no-useless-catch )prefer-immediate-return ) (: kunci pas: dapat diperbaiki )prefer-object-literal )prefer-single-boolean-return ) (: kunci pas: dapat diperbaiki )prefer-while ) (: kunci pas: dapat diperbaiki ) eslint-plugin-sonarjs menggunakan npm (atau yarn ) untuk proyek Anda atau secara global: npm install eslint-plugin-sonarjs --save-dev # install for your project
npm install eslint-plugin-sonarjs -g # or install globallyeslint-plugin-sonarjs ke plugin Eslint Config Anda. Untuk Eslint 9: Tambahkan opsi plugins ke eslint.config.js Anda dan sertakan konfigurasi yang disarankan untuk mengaktifkan semua aturan:
import sonarjs from "eslint-plugin-sonarjs";
[
sonarjs.configs.recommended,
{
"plugins": {
sonarjs,
}
}
]
Untuk Eslint 8: Tambahkan opsi plugins ke .eslintrc dan plugin:sonarjs/recommended-legacy ke opsi extends untuk mengaktifkan semua aturan yang disarankan:
{
"plugins" : [ " sonarjs " ],
"extends" : [ " plugin:sonarjs/recommended-legacy " ]
}{
"rules" : {
"sonarjs/cognitive-complexity" : " error " ,
"sonarjs/no-identical-expressions" : " error "
// etc.
}
}@typescript-eslint/parser sebagai parser untuk Eslint (seperti yang kita lakukan) dan atur opsi ParserOptions.Project. Terima kasih, ketik informasi tersedia, yang bermanfaat atau bahkan penting untuk beberapa aturan. Plugin ini hanya menyediakan konfigurasi recommended . Hampir semua aturan diaktifkan di profil ini dengan beberapa pengecualian (periksa tag disabled dalam daftar aturan). Konfigurasi recommended mengaktifkan aturan dengan keparahan error . Kami menyertakan konfigurasi recommended-legacy untuk kompatibel ke belakang dengan Eslint V8, dengan konfigurasi aturan yang sama ..
Plugin ini memaparkan kepada pengguna Eslint, subset dari aturan JS/TS dari produk Sonar-* (alias Sonarjs). Kami mengekstraksi aturan yang tidak tersedia di Eslint Core atau plugin Eslint lainnya untuk bermanfaat bagi komunitas Eslint.
Jika Anda adalah pengguna Sonarqube atau SonarCloud, untuk meletakkan kode Anda secara lokal, kami sarankan menggunakan ekstensi IDE Sonarlint (tersedia untuk VScode, IDE JetBrains dan Eclipse). Anda dapat menghubungkan Sonarlint ke proyek Sonarqube/SonarCloud Anda untuk menyinkronkan konfigurasi aturan, status masalah, dll.
Apakah Anda ingin berpartisipasi dalam pengembangan proyek? Lihatlah panduan berkontribusi kami!