วิธีย้ายจาก Javascript เป็น Typescript โดยใช้เครื่องมือ ts-migrate
Typescript (TS) ยอดเยี่ยมมาก! มันทำให้โค้ดชัดเจนขึ้น ดูแลรักษาง่าย และป้องกันข้อผิดพลาดทั่วไป คุณตัดสินใจว่านี่เป็นทางเลือกที่ดีที่สุดสำหรับทีมของคุณ และตอนนี้คุณต้องการนำมาใช้ ไชโย!
อ๊ะ… มันไม่ง่ายอย่างที่คิดที่จะนำ TS มาใช้ เป็นเรื่องที่น่าเบื่อและใช้เวลานานมาก ดังนั้นจะย้ายจาก JS เป็น TS ได้อย่างไร ด้วยการแชท GPT! ยังไม่ใช่ .
แต่การใช้ ts-migrate สามารถทำให้งานง่ายขึ้น
เกี่ยวกับ ts-migrate
ts-migrateเป็นเครื่องมือสำหรับช่วยย้ายรหัสไปยัง TypeScript ต้องใช้ JavaScript (JS) หรือ TypeScript บางส่วน โปรเจ็กต์เข้าและให้โปรเจ็กต์ TypeScript ที่คอมไพล์ออกมา
เราใช้ ts-migrate เพื่อแปลงไฟล์ 1,000 ไฟล์ในโครงการของเราจาก JS เป็น TS มันช่วยเราประหยัดเวลาอันมีค่าและทำให้กระบวนการสะดวกมาก
การติดตั้งและกำหนดค่า TS
ก่อนเริ่มกระบวนการย้าย เราต้องติดตั้งและกำหนดค่า TS:
- ติดตั้งแพ็คเกจ TS:
npm install typescript --save-dev
npx tsc --init
npm install --save-dev @types/react
เราจะใช้ ts-migrate เพื่อย้ายไฟล์ JS ของเราไปยัง TS:
- ติดตั้ง ts-migrate:
npm install --save-dev ts-migrate
yarn ts-migrate rename <project-dir> --sources <specific-dir>
yarn ts-migrate migrate <project-dir> --sources <specific-dir>/file.tsx
ตัวอย่าง
ฉันสร้าง โปรเจ็กต์ ts-migrate-exampleเพื่อสาธิตกระบวนการย้ายข้อมูล โคลนไปยังเครื่องของคุณ:
git clone https://github.com/shai20099/ts-migrate-example.git
yarn ts-migrate rename ./ --sources ./src/examples

ขั้นตอนต่อไปของเราคือการใช้สคริปต์การย้ายข้อมูลกับไฟล์ตัวอย่าง:
yarn ts-migrate migrate ./ --sources ./src/examples/example.ts




หมายเหตุ:ในกรณีที่ ts-migrate ไม่สามารถแก้ไขปัญหา TS โดยอัตโนมัติได้ จะทิ้ง ความคิดเห็น @ts-expect-errorพร้อมรายละเอียดข้อผิดพลาด
หมายเหตุ:แม้ว่า ts-migrate จะใส่ประเภทให้กับตัวแปรเมื่อจำเป็น แต่เรายังคงต้องจำไว้ว่าให้เปลี่ยนประเภทใดๆให้เป็นประเภทเฉพาะ
หมายเหตุ: ts-migrate ใช้ปลั๊กอินเพื่อทำการเปลี่ยนแปลงโดยอัตโนมัติ คุณสามารถทำให้การดำเนินการเพิ่มเติมโดยอัตโนมัติโดยสร้างปลั๊กอินที่กำหนดเองสำหรับโครงการของคุณ ราย ละเอียดเพิ่มเติมอยู่ที่นี่
สรุป
ts-migrate เป็นเครื่องมือสำหรับช่วยย้ายโค้ดจาก JS ไปยัง TS เป้าหมายหลักคือการสร้างโค้ดที่คอมไพล์แล้ว และยังแก้ไขข้อผิดพลาดบางอย่างโดยอัตโนมัติโดยใช้ปลั๊กอิน แม้ว่า ts-migrate จะไม่ใช่เครื่องมืออัตโนมัติทั้งหมด แต่เราพบว่ามีประโยชน์มากเนื่องจากสามารถตรวจจับช่องว่างระหว่าง JS กับ TS แก้ไขสิ่งที่ทำได้ และทำเครื่องหมายรหัสที่ต้องแก้ไขด้วยตนเอง ซึ่งช่วยประหยัดเวลาได้มากในกระบวนการย้ายข้อมูล โดยเฉพาะอย่างยิ่งเมื่อคุณมีไฟล์จำนวนมากที่จะย้าย
ขอให้โชคดี!