1

我是新手,正在努力使用速度模板。我手头的模板很少,里面有很多宏。

// file b.vm
#macro (bmacro)
 from b macro
#end

// file a.vm
#parse("//temp//b.vm")
from a
#bmacro()

我的期望是得到

from a
from b macro

但是,我只得到“来自”的结果。但是当我将任何静态文本放在 bmacro 之外时,它就可以相处了。

顺便说一句,我正在使用来自城堡项目的 NVelocity。

谢谢

4

1 回答 1

1

该宏不起作用,因为 NVelocity(及其祖先 Velocity)#bmacro在解析时确定是指令还是宏,而#bmacro宏在运行时在跳转到另一个模板时被发现,因此它作为文本传递。

几个月前我用一个详细的答案回答了另一个问题,这个问题有同样的问题: 宏不在 NVelocity 中呈现

于 2014-10-03T08:33:11.117 回答