ESLint และ @typescript-eslint
ตั้งค่า ESLint ร่วมกับปลั๊กอิน @typescript-eslint เพื่อตรวจจับปัญหาที่เกี่ยวกับชนิดข้อมูลและบังคับใช้รูปแบบที่สอดคล้องกัน
ESLint และ @typescript-eslint เป็นบทเรียน TypeScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน TypeScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 3 บทเรียน
บทนำ
เป้าหมาย: ใช้ ESLint ร่วมกับ @typescript-eslint เพื่อค้นหาข้อผิดพลาดและบังคับใช้รูปแบบในโครงการ TypeScript
ติดตั้ง
ติดตั้ง ESLint หลัก พร้อม @typescript-eslint/parser และ @typescript-eslint/eslint-plugin
npm install --save-dev eslint @typescript-eslint/parser @typescript-eslint/eslint-pluginการกำหนดค่า
กำหนดค่า ESLint ให้ใช้ตัวแยกวิเคราะห์ TS และกฎที่แนะนำ เพิ่มกฎเฉพาะโครงการตามความจำเป็น
// .eslintrc.js
module.exports = {
parser: "@typescript-eslint/parser",
plugins: ["@typescript-eslint"],
extends: [
"eslint:recommended",
"plugin:@typescript-eslint/recommended"
],
rules: {
"@typescript-eslint/no-unused-vars": "warn"
}
};ตัวอย่างการตรวจรูปแบบ
ESLint จะเน้นอาร์กิวเมนต์ที่ขาดหาย ตัวแปรที่ไม่ได้ใช้ และปัญหาด้านรูปแบบเมื่อใช้ตัวแยกวิเคราะห์ที่รองรับ TS
// demo.ts
function greet(name: string) {
console.log("Hello", name)
}
greet("Ada")
greet() // ESLint error: missing arg
กฎที่เข้าใจชนิดข้อมูล
เชื่อมโยง tsconfig.json ใน parserOptions สำหรับกฎที่ต้องใช้ข้อมูลชนิดข้อมูล เช่น การตรวจจับพรอมิสที่ไม่ได้จัดการ
// tsconfig.json must be linked for type-aware rules
{
"parserOptions": {
"project": "./tsconfig.json"
}
}
// Example: no-floating-promises
async function f() {
fetch("/api") // ESLint error: unhandled promise
}เรียกใช้การตรวจรูปแบบ
เรียกใช้ ESLint กับฐานโค้ดของคุณ เพิ่ม --fix เพื่อใช้การแก้ไขที่ปลอดภัยโดยอัตโนมัติ
npx eslint "src/**/*.{ts,tsx}" --fixคำถาม
ตรวจสอบอย่างรวดเร็ว: เหตุใดจึงใช้ @typescript-eslint เพิ่มเติมจากแกนหลักของ ESLint
สรุปทบทวน
สรุปทบทวน: ติดตั้ง ESLint + @typescript-eslint กำหนดค่าตัวแยกวิเคราะห์ ขยายกฎที่แนะนำ และเรียกใช้เครื่องมือตรวจรูปแบบด้วยกฎที่เข้าใจชนิดข้อมูลเพื่อให้โค้ดสะอาด
คำถามที่พบบ่อย
บทเรียน “ESLint และ @typescript-eslint” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ESLint และ @typescript-eslint” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส TypeScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 3 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ESLint และ @typescript-eslint”
ตั้งค่า ESLint ร่วมกับปลั๊กอิน @typescript-eslint เพื่อตรวจจับปัญหาที่เกี่ยวกับชนิดข้อมูลและบังคับใช้รูปแบบที่สอดคล้องกัน คุณปฏิบัติ TypeScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน TypeScript Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน TypeScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 3 บทเรียน
บทเรียน “ESLint และ @typescript-eslint” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน TypeScript Academy นี้ได้ไหม
ได้ บทเรียน TypeScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ESLint และ @typescript-eslint
- การผสาน Prettier และความขัดแย้งของกฎ
- ชุดกฎที่ใช้จริงโดยทั่วไป