Jawaban:
Ya ada jalan. Sebenarnya dua. Pada bulan Oktober 2013 jshint menambahkan cara untuk mengabaikan blok kode seperti ini:
// Code here will be linted with JSHint.
/* jshint ignore:start */
// Code here will be ignored by JSHint.
/* jshint ignore:end */
// Code here will be linted with JSHint.
Anda juga dapat mengabaikan satu baris dengan komentar tambahan seperti ini:
ignoreThis(); // jshint ignore:line
// jshint ignore:line
- bekerja hebat dengan;(function() { // jshint ignore:line
bad option: 'ignore'
dengan menggunakan opsi spesifik untuk baris yang ingin saya abaikan. Dalam kasus saya, saya ingin mengabaikan if (x == null)
karena saya ingin sama dengan lebih dari nol dan digunakan /* jshint eqnull:true */
dalam fungsi yang sama dengan if
untuk membungkam JSHint.
Jawaban "jahat" tidak berhasil untuk saya. Sebagai gantinya, saya menggunakan apa yang direkomendasikan pada halaman dokumen JSHints . Jika Anda tahu peringatan yang dilemparkan, Anda dapat mematikannya untuk satu blok kode. Misalnya, saya menggunakan beberapa kode pihak ketiga yang tidak menggunakan fungsi case unta, namun aturan JSHint saya mengharuskannya, yang menyebabkan peringatan. Untuk membungkamnya, saya menulis:
/*jshint -W106 */
save_state(id);
/*jshint +W106 */
--verbose
perintah untuk mendapatkan nomor peringatan.
Seperti yang Anda lihat dalam dokumentasi JSHint, Anda dapat mengubah opsi per fungsi atau per file . Dalam kasus Anda, cukup beri komentar di file Anda atau bahkan lebih lokal hanya di fungsi yang menggunakan eval
:
/*jshint evil:true */
function helloEval(str) {
/*jshint evil:true */
eval(str);
}