vite-plugin-dts-build, ปลั๊กอิน vite สำหรับสร้าง type ประสิทธิภาพสูง
(github.com/black7375)เดิมมีปลั๊กอินชื่อ vite-plugin-dts อยู่แล้ว แต่มีปัญหาด้านประสิทธิภาพกับแพ็กเกจขนาดใหญ่หรือโมโนรีโป จึงสร้างขึ้นมาเองโดยตรง
ทำไมถึงเร็ว?
- อินคริเมนทัลบิลด์แบบเดียวกับ
tsc --build - รันแบบขนานในเวิร์กเกอร์ที่แยกออกมา
- เมื่อมีการรันหลาย format ใน library mode ของ vite จะไม่รันซ้ำซ้อน
เพราะสามารถทำอินคริเมนทัลบิลด์ได้ จึงเร็วเป็นพิเศษใน hot build
และบิลด์ของแพ็กเกจที่เดิมใช้เวลามากกว่า 30 วินาที ก็ลดลงเหลือ 5 วินาที
เคล็ดลับการใช้งาน
หากต้องการใช้งานให้ถูกต้อง อาจจำเป็นต้องตั้งค่า Project Reference ให้เหมาะสม
ด้วยเหตุนี้จึงได้ร่วมพัฒนาแพ็กเกจ @monorepo-utils/workspaces-to-typescript-project-references เพื่อให้ตั้งค่า project reference ได้โดยอัตโนมัติ
- ซิงเกิลรีโป: ใช้ออปชัน
--includesLocal - โมโนรีโป: ใช้ออปชัน
--includesRootและ--includesLocal
หมายเหตุ: ปลั๊กอินนี้ไม่รองรับ vue-tsc หรือ การ bundle type (rollupTypes)
1 ความคิดเห็น
ถ้าสนใจมุมมองที่หลากหลายเกี่ยวกับเครื่องมือบิลด์ฝั่งฟรอนต์เอนด์นอกเหนือจากนี้ด้วย
ลองอ่านบทความ ข้อคิดว่าด้วยการบิลด์โมโนรีโปฝั่งฟรอนต์เอนด์ ดูได้เลย!!