FreeMarker
1、指令
list
列表显示内容;
语法:
<#list 集合名称 as 变量名>
显示的内容
</#list>
eg:
<table border=1>
<#list animals as animal>
<tr>
<td>${animal.name}<td>${animal.price} Euros
</#list>
</table>
if
过滤模板内容;
语法:
<#if condition>
过滤的内容
<#elseif condition2 >
条件为2时的过滤
<#else>
不符合条件
</#if>
== :判断它两侧的值是否相等的操作符, 比较的结果是布尔值,也就是true或者false;
assign
创建一个新的变量, 或者替换一个已经存在的变量;
语法:
<#assign name1=value1 name2=value2 ... nameN=valueN>
或 <#assign same as above... in namespacehash>
或 <#assign name>
capture this
</#assign>
或 <#assign name in namespacehash>
capture this
</#assign>
name:变量名 =:赋值符号 value:值
macro
创建一个宏变量;
语法:
<#macro name param1 param2 ... paramN>
...
<#nested loopvar1, loopvar2, ..., loopvarN>
...
<#return>
...
</#macro>
name:宏变量名称 param1:局部变量名称
function
param1:局部变量名称
function
创建一个方法变量;
语法:
<#function name param1 param2 ... paramN>
...
<#return returnValue>
...
</#function>
name:方法变量的名称
param1:局部变量名称
local
创建一个新的变量, 或者替换一个已经存在的变量(仅在宏和方法的内部定义才会有作用);
语法:
<#local name=value>
<#local name1=value1 name2=value2 ... nameN=valueN>
<#local name> capture this </#local>
name:局部变量名称 =:赋值符号 value:值
2、处理不存在的变量
语法1:变量名+!+值
当变量不存在时,显示!后面的默认值;
eg:<h1>Welcome ${user ! "visitor"}</h1>
语法2:变量名+??
校验变量是否为空;
eg:<#if user??><h1>Welcome ${user}!</h1></#if>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)