ใน Freemarker, macros
และ functions
ใช้สร้างส่วนที่สามารถใช้ซ้ำได้ใน templates. ซึ่งทั้งสองต่างก็มีหน้าที่ที่คล้ายกัน แต่ macros
มักถูกใช้เพื่อแทรกข้อความหรือ HTML ส่วนใหญ่, ในขณะที่ functions
มักถูกใช้เพื่อคืนค่า.
เป็นวิธีการสร้างส่วนของ template ที่สามารถใช้ซ้ำได้.
การกำหนด macro:
<#macro sayHello name>
Hello, ${name}!
</#macro>
การเรียกใช้ macro:
<@sayHello name="John" />
เป็นวิธีการสร้างฟังก์ชันที่คืนค่าตามที่คุณต้องการ.
การกำหนด function:
<#function add a b>
<#return a + b>
</#function>
การเรียกใช้ function:
<#assign result = add(5, 3)>
The result is: ${result}
<!-- The result is: 8 -->
คุณสามารถนำ macros และ functions มาใช้ร่วมกันใน template เดียวกัน, หรือจะนำเข้าจาก templates อื่นๆ ได้ผ่าน <#import ...>
.
ตัวอย่างการนำเข้า macros และ functions:
<#import "myMacrosAndFunctions.ftl" as utils>
<@utils.sayHello name="Alice" />
The sum is: ${utils.add(4, 5)}
การใช้ macros
และ functions
ใน Freemarker ทำให้ template ของคุณมีความยืดหยุ่นและความสามารถในการแบ่งปันระหว่าง templates หลายๆ อัน, ช่วยในการเก็บรักษาและอัปเดตได้ง่ายขึ้น.
จำนวนคนดู : 1,574 | วันที่สร้าง : 08/09/2023 |