คอมไพเลอร์ที่กำหนดเอง

คุณสามารถเพิ่มประสิทธิภาพของกระบวนการคอมไพล์ได้ด้วยคอมไพเลอร์ที่กำหนดเอง คุณสามารถเรียกคอมไพเลอร์ที่กำหนดเองให้คอมไพล์เลย์เอาต์ของเพจ เลย์เอาต์ส่วน องค์ประกอบที่กำหนดเอง หรือเลย์เอาต์ของเนื้อหาไปยังเพจ และหลีกเลี่ยงการเพิ่มองค์ประกอบแบบไดนามิคขณะรันไทม์

หากไม่มีคอมไพเลอร์ที่กำหนดเองสำหรับองค์ประกอบ หรือคอมไพเลอร์ขององค์ประกอบไม่ส่งคืนมาร์คอัป ระบบจะแสดงองค์ประกอบขณะรันไทม์ราวกับว่าไม่เคยได้รับการคอมไพล์มาก่อน

คอมไพเลอร์ที่กำหนดเองได้รับการรองรับสำหรับองค์ประกอบต่อไปนี้

  • เลย์เอาต์ของเพจ
  • เลย์เอาต์ส่วน
  • องค์ประกอบที่กำหนดเอง
  • เลย์เอาต์ของเนื้อหา

ตัวอย่างต่อไปนี้แสดงคอมไพเลอร์เลย์เอาต์ของเพจและเลย์เอาต์ของเนื้อหา คอมไพเลอร์เลย์เอาต์ส่วนและองค์ประกอบที่กำหนดเองจะมีโมเดลเดียวกับคอมไพเลอร์เลย์เอาต์ของเนื้อหา

หากไม่มีคอมไพเลอร์ที่กำหนดเอง องค์ประกอบจะแสดงผ่านไฟล์ render.js

ในกรณีที่มีคอมไพเลอร์ที่กำหนดเอง ระบบจะเรียกคอมไพเลอร์ดังกล่าว และแทรก HTML ผลลัพธ์ไปยังเพจ นอกจากนี้ คอมไพเลอร์ที่กำหนดเองยังสามารถระบุให้ทราบว่าองค์ประกอบต้องมีการแปลงสถานะ JavaScript ขณะรันไทม์ด้วย หากเป็นกรณีนี้ ระบบจะเรียกฟังก์ชัน hydrate() ขององค์ประกอบภายในไฟล์ render.js ในกรณีที่องค์ประกอบไม่จำเป็นต้องมีการแปลงสถานะ ระบบจะไม่โหลดไฟล์ render.js ขององค์ประกอบ

หมายเหตุ:

การคอมไพล์เป็นคุณสมบัติขณะรันไทม์ (ไซต์ที่เผยแพร่) เท่านั้น เมื่อมีการดูไซต์ในโหมดแก้ไข นาวิเกต หรือแสดงตัวอย่าง เพจจะทำงานตามปกติ และระบบจะเพิ่มองค์ประกอบทั้งหมดในเพจแบบไดนามิคเสมอ