ฉันใช้เคส (แอปเดียว) ในแอปของฉันeval
และฉันต้องการระงับการแจ้งเตือน JSHint สำหรับเคสนี้เท่านั้น
มีวิธีการที่จะบรรลุเป้าหมายนั้นหรือไม่? การกำหนดค่าความคิดเห็นมายากล ... ?
ฉันใช้เคส (แอปเดียว) ในแอปของฉันeval
และฉันต้องการระงับการแจ้งเตือน JSHint สำหรับเคสนี้เท่านั้น
มีวิธีการที่จะบรรลุเป้าหมายนั้นหรือไม่? การกำหนดค่าความคิดเห็นมายากล ... ?
คำตอบ:
ใช่มีวิธี สองอันที่จริงแล้ว ในเดือนตุลาคม 2013 jshint ได้เพิ่มวิธีการละเว้นบล็อกของรหัสดังนี้:
// 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.
คุณสามารถละเว้นบรรทัดเดียวที่มีความคิดเห็นต่อท้ายดังนี้:
ignoreThis(); // jshint ignore:line
// jshint ignore:line
- ทำงานได้ดีกับ;(function() { // jshint ignore:line
bad option: 'ignore'
โดยใช้ตัวเลือกเฉพาะสำหรับบรรทัดที่ฉันต้องการละเว้น ในกรณีของฉันฉันต้องการที่จะเพิกเฉยif (x == null)
เพราะฉันต้องการที่จะให้เท่ากันมากกว่าเพียงโมฆะและใช้/* jshint eqnull:true */
ในฟังก์ชั่นเดียวกับif
การเงียบ JSHint
คำตอบ "ชั่วร้าย" ไม่ทำงานสำหรับฉัน ฉันใช้สิ่งที่แนะนำในหน้าเอกสารของ JSHints แทน หากคุณทราบคำเตือนที่ถูกโยนคุณสามารถปิดมันเพื่อบล็อกรหัส ตัวอย่างเช่นฉันใช้รหัสบุคคลที่สามที่ไม่ได้ใช้ฟังก์ชันตัวพิมพ์เล็กอูฐ แต่กฎ JSHint ของฉันต้องใช้ซึ่งนำไปสู่คำเตือน เพื่อเงียบฉันเขียน:
/*jshint -W106 */
save_state(id);
/*jshint +W106 */
--verbose
คำสั่งเพื่อรับหมายเลขคำเตือน
ที่คุณสามารถดูในเอกสารของ JSHintคุณสามารถเปลี่ยนแปลงตัวเลือกต่อฟังก์ชั่นหรือต่อไฟล์ ในกรณีของคุณเพียงแค่ใส่ความคิดเห็นในไฟล์ของคุณหรือในตัวเครื่องที่ใช้eval
:
/*jshint evil:true */
function helloEval(str) {
/*jshint evil:true */
eval(str);
}