0Pricing
TypeScript Academy · บทเรียน

การตั้งค่า TypeScript กับ Node.js

กำหนดค่า tsconfig สำหรับโครงการแบ็กเอนด์ Node.js

การตั้งค่า TypeScript กับ Node.js เป็นบทเรียน TypeScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน TypeScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน

ยินดีต้อนรับ

เรียนรู้วิธีกำหนดค่า TypeScript สำหรับโครงการแบ็กเอนด์ Node.js

เริ่มต้นโครงการ

สร้าง package.json และติดตั้ง TypeScript พร้อมชนิดของ Node.js
npm init -y
npm install --save-dev typescript @types/node ts-node

การกำหนดค่า tsconfig สำหรับ Node

กำหนดค่า tsconfig.json สำหรับโครงการ Node.js ที่ใช้ CommonJS
{
  "compilerOptions": {
    "target": "ES2020",
    "module": "commonjs",
    "outDir": "./dist",
    "strict": true,
    "esModuleInterop": true
  }
}

การเรียกใช้ด้วย ts-node

ใช้ ts-node หรือ tsx สำหรับการพัฒนาโดยไม่ต้องมีขั้นตอนคอมไพล์
npx ts-node src/index.ts
npx tsx watch src/index.ts

การสร้างรุ่นใช้งานจริง

คอมไพล์ TypeScript เป็น JavaScript สำหรับใช้งานจริง
npx tsc
node dist/index.js

แผนที่ซอร์สสำหรับการแก้จุดบกพร่อง

เปิดใช้แผนที่ซอร์สเพื่อแมปข้อผิดพลาดกลับไปยังบรรทัดของ TypeScript
{ "compilerOptions": { "sourceMap": true } }

ตัวแปรสภาพแวดล้อม

ใช้ process.env ร่วมกับ @types/node เพื่อเข้าถึงสภาพแวดล้อมโดยมีชนิดกำกับ
const port = process.env.PORT ?? '3000';

ชื่อแทนเส้นทาง

กำหนดค่าชื่อแทนเส้นทางเพื่อให้การนำเข้าสะอาดและอ่านง่ายขึ้น
{ "compilerOptions": { "paths": { "@/*": ["src/*"] } } }

การผสานรวม Nodemon

ใช้ nodemon ร่วมกับ ts-node เพื่อเริ่มการทำงานใหม่โดยอัตโนมัติเมื่อมีการเปลี่ยนแปลง
{ "watch": ["src"], "exec": "ts-node src/index.ts" }

การกำหนดค่า ESM

สำหรับโมดูล ESM ใน Node.js ให้กำหนด module เป็น NodeNext
{ "compilerOptions": { "module": "NodeNext" } }

การโหลดการกำหนดค่าที่ปลอดภัยด้านชนิด

โหลดและตรวจสอบความถูกต้องของไฟล์การกำหนดค่าด้วยอินเทอร์เฟซที่มีชนิดกำกับ
interface AppConfig { port: number; db: string; }
const config: AppConfig = require('./config.json');

ตรวจสอบสั้น ๆ

ประโยชน์หลักของการใช้ @types/express ในโครงการ TypeScript คืออะไร

สรุปทบทวน

การตั้งค่า TypeScript ร่วมกับ Node.js: กำหนดชนิดเจเนอริกของ Request/Response สำหรับพารามิเตอร์ เนื้อหาคำขอ และคำค้นหา ขยาย Request ผ่านการเพิ่มส่วนขยายโมดูลเพื่อเพิ่มพร็อพเพอร์ตีแบบกำหนดเอง กำหนดชนิดมิดเดิลแวร์และตัวจัดการข้อผิดพลาดด้วยลายเซ็นเฉพาะของแต่ละชนิด

คำถามที่พบบ่อย

บทเรียน “การตั้งค่า TypeScript กับ Node.js” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การตั้งค่า TypeScript กับ Node.js” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส TypeScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส TypeScript Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การตั้งค่า TypeScript กับ Node.js”

กำหนดค่า tsconfig สำหรับโครงการแบ็กเอนด์ Node.js คุณปฏิบัติ TypeScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน TypeScript Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน TypeScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “การตั้งค่า TypeScript กับ Node.js” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน TypeScript Academy นี้ได้ไหม

ได้ บทเรียน TypeScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การตั้งค่า TypeScript กับ Node.js
  2. การระบุชนิดคำขอและการตอบกลับของ Express
  3. มิดเดิลแวร์และตัวจัดการข้อผิดพลาดที่ระบุชนิด
  4. ตัวแปรสภาพแวดล้อมและการระบุชนิดการกำหนดค่า
← กลับไปที่ TypeScript Academy