Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon ตะขอทั่วไปที่สามารถชะลอการเปลี่ยนแปลงของ Vite ได้อย่างไร


ตะขอทั่วไปที่สามารถชะลอการเปลี่ยนแปลงของ Vite ได้อย่างไร


เมื่อใช้ VITE ตะขอบางอย่างสามารถชะลอการเปลี่ยนแปลงและประสิทธิภาพโดยรวมได้อย่างมีนัยสำคัญ นี่คือตะขอทั่วไปที่อาจแนะนำความล่าช้า:

ตะขอทั่วไปที่สามารถชะลอการแปลง Vite

1. `config` hook:
- คำอธิบาย: ตะขอนี้ถูกเรียกให้แก้ไขการกำหนดค่า VITE ก่อนที่จะได้รับการแก้ไข หากเบ็ดนี้ทำการคำนวณอย่างหนักหรือการทำงานแบบซิงโครนัสอาจทำให้เวลาเริ่มต้นของเซิร์ฟเวอร์ VITE ช้าลง
- เคล็ดลับประสิทธิภาพ: รักษาการทำงานภายในน้ำหนักเบาของตะขอนี้และพิจารณาใช้การดำเนินการแบบอะซิงโครนัสหากจำเป็น

2. `hook configresolved`:
- คำอธิบาย: เบ็ดนี้ดำเนินการหลังจากการกำหนดค่า VITE ได้รับการแก้ไข หากมีตรรกะที่ซับซ้อนหรือการประมวลผลอย่างหนักก็สามารถชะลอการดำเนินงานที่ตามมา
- เคล็ดลับประสิทธิภาพ: ใช้ตะขอนี้เพื่ออ่านและจัดเก็บการกำหนดค่าที่ได้รับการแก้ไข แต่หลีกเลี่ยงการคำนวณอย่างเข้มข้น

3. `hook 'transform':
- คำอธิบาย: ตะขอนี้รับผิดชอบในการแปลงไฟล์ตามที่ร้องขอ หากตรรกะการแปลงช้าหรือเกี่ยวข้องกับการประมวลผลหนัก (เช่นการจัดการ AST ที่ซับซ้อน) มันสามารถส่งผลกระทบต่อการตอบสนองของ HMR
- เคล็ดลับประสิทธิภาพ: เพิ่มประสิทธิภาพการแปลงตรรกะและพิจารณาผลลัพธ์การแคชที่เป็นไปได้

4. `load` hook:
- คำอธิบาย: ตะขอนี้จะถูกเรียกใช้เมื่อโหลดโมดูล หากมีตรรกะที่ดึงข้อมูลหรือประมวลผลข้อมูลจากแหล่งภายนอกอาจแนะนำเวลาแฝง
- เคล็ดลับประสิทธิภาพ: ลดการโทรภายนอกและรักษาตรรกะภายในตะขอนี้อย่างมีประสิทธิภาพ

5. `Resolveid` Hook:
- คำอธิบาย: ตะขอนี้ถูกเรียกให้แก้ไขรหัสโมดูล หากมีตรรกะความละเอียดที่ซับซ้อนหรือการทำงานแบบซิงโครนัสก็สามารถชะลอกระบวนการความละเอียดของโมดูล
- เคล็ดลับประสิทธิภาพ: ทำให้ตรรกะความละเอียดง่ายขึ้นและหลีกเลี่ยงความซับซ้อนที่ไม่จำเป็น

6. `buildstart` และ` buildend` hooks:
- คำอธิบาย: ตะขอเหล่านี้เรียกว่าตอนต้นและจุดสิ้นสุดของกระบวนการสร้าง หากพวกเขามีการดำเนินงานหนักพวกเขาสามารถขยายเวลาการสร้าง
- เคล็ดลับประสิทธิภาพ: การ จำกัด การดำเนินงานในตะขอเหล่านี้เป็นงานที่จำเป็น

7. ไฟล์บาร์เรล:
-คำอธิบาย: ในขณะที่ไม่ใช่ตะขอโดยใช้ไฟล์บาร์เรล (ไฟล์ดัชนีที่ส่งออกโมดูลอีกครั้ง) สามารถนำไปสู่การเพิ่มขนาดของมัดและภาวะแทรกซ้อนด้วยการเขย่าต้นไม้ซึ่งอาจทำให้การสร้างและ HMR ช้าลง
- เคล็ดลับประสิทธิภาพ: หลีกเลี่ยงไฟล์บาร์เรลที่เป็นไปได้โดยเฉพาะในโครงการขนาดใหญ่เพื่อปรับปรุงประสิทธิภาพ

8. ปลั๊กอิน:
- คำอธิบาย: ปลั๊กอิน VITE บางตัวอาจแนะนำค่าใช้จ่ายด้านประสิทธิภาพหากไม่ได้รับการปรับให้เหมาะสมหรือหากทำการประมวลผลอย่างกว้างขวาง
- เคล็ดลับประสิทธิภาพ: ประเมินผลกระทบด้านประสิทธิภาพของปลั๊กอินและพิจารณาทางเลือกหรือการเพิ่มประสิทธิภาพ

ด้วยการตระหนักถึงตะขอเหล่านี้และผลกระทบที่อาจเกิดขึ้นกับประสิทธิภาพนักพัฒนาสามารถเพิ่มประสิทธิภาพการกำหนดค่า VITE และปรับปรุงประสบการณ์การพัฒนาโดยรวม การรักษาน้ำหนักเบาและหลีกเลี่ยงตรรกะที่ซับซ้อนในตะขอเหล่านี้เป็นสิ่งสำคัญสำหรับการรักษาเวลาการสร้างที่รวดเร็วและการตอบสนอง HMR

การอ้างอิง:
[1] https://vitejs.dev/guide/api-plugin
[2] https://shopify.engineering/developer-experience-with-hydrogen-and-vite
[3] https://vitejs.dev/config/build-options
[4] https://remix.run/docs/en/main/guides/vite
[5] https://github.com/storybookjs/builder-vite/issues/577