local

Page Contents

Synopsis

<#local name=value>
or
<#local name1=value1 name2=value2 ... nameN=valueN>
or
<#local name>
  capture this
</#local>

Where:

Description

它类似于assign directive,但是它创建或替换局部变量。这仅在宏定义和函数定义内起作用。

有关变量的更多信息,请阅读:模板作者指南/模板中的其他/定义变量

Note:

一个常见的错误是试图使用assign来更改局部变量,例如:<#macro m><#local x = 1>${x}<#assign x = 2>${x}</#macro>。这将打印11而不是12,因为assign创建/替换了模板所属的命名空间的x,并且不更改x局部变量。局部变量应始终使用local directive设置,而不仅仅是在第一时间设置。

上一章 首页 下一章