
Software
NodeJS รันไฟล์ TypeScript ได้แล้ว
NodeJS รันไฟล์ TypeScript ได้แล้ว
1 นาทีในการอ่าน
โดย DriteStudio
Node.js ได้เพิ่มการรองรับการรันไฟล์ TypeScript ได้โดยตรงแล้วตั้งแต่เวอร์ชัน 23.6.0 เป็นต้นไป ซึ่งถือเป็นการเปลี่ยนแปลงครั้งใหญ่ที่ช่วยให้นักพัฒนาสามารถเขียนและรัน TypeScript ได้โดยไม่ต้องแปลงเป็น JavaScript ก่อน ดังนี้
- การรัน TypeScript แบบ Native ใน Node.js
- Node.js ใช้เทคนิค "type stripping" คือการลบ annotation ของชนิดข้อมูล TypeScript ออกในขั้นตอนรันไทม์ ทำให้สามารถรันโค้ด TypeScript ได้ทันทีโดยแปลงเป็น JavaScript ที่ถูกต้องไปในตัว
- ตัวอย่างรันไฟล์ TypeScript แบบง่าย ๆ เพียงใช้คำสั่ง
โดยไม่ต้องใช้ flag พิเศษหรือคอมไพล์ก่อนnode filename.ts
- ความสามารถของ Node.js ในการรัน TypeScript
- รองรับไฟล์ .ts, .mts, และ .cts (แต่ไม่รองรับ .tsx)
- รองรับโมดูล CommonJS และ ES Modules ตามที่ TypeScript กำหนด
- ไม่รองรับบาง syntax ที่ต้องเปลี่ยนแปลง JavaScript เช่น decorators หรือ JSX
- ข้อควรระวังและข้อจำกัด
- Node.js ไม่ทำการตรวจสอบชนิดข้อมูล (type checking) ให้เหมือนกับการคอมไพล์ด้วย tsc ดังนั้นจึงต้องใช้เครื่องมือพวก tsc หรือ IDE ช่วยตรวจสอบโค้ดแยกต่างหาก
- ไฟล์ tsconfig.json จะถูกมองข้ามโดย Node.js ในการรันไฟล์ TypeScript โดยตรง
- บางฟีเจอร์ของ TypeScript ที่ต้องแปลงเป็น JavaScript เพิ่มเติมยังจำเป็นต้องเปิด flag experimental เช่น
--experimental-transform-types
- การอิมพอร์ตไฟล์ต้องระบุสกุลไฟล์ TypeScript ให้ชัดเจน เช่น
import { func } from './module.ts'
- วิธีการใช้งานร่วมกับ third-party package
- ยังสามารถใช้เครื่องมือเสริมเช่น tsx หรือ ts-node เพื่อความสะดวกในการพัฒนาและรองรับฟีเจอร์ที่หลากหลายกว่า
สรุปคือ Node.js เวอร์ชันใหม่อำนวยความสะดวกให้นักพัฒนาสามารถรันไฟล์ TypeScript ได้ง่ายขึ้นโดยไม่ต้องแปลงไฟล์ก่อน แต่ยังคงรักษาความเข้ากันได้และต้องตั้งค่าควบคุมเพิ่มเติมเพื่อใช้ฟีเจอร์ขั้นสูงบางอย่างได้อย่างเต็มที่
หมวดหมู่:#Software