我在做一些关于Velocity模板语法的简短阅读。具体来说,我试图创建由模板引擎有条件地呈现的内容。更具体地说,我想检查合流实例中的用户权限组,返回一个组名数组,然后根据当前权限级别需要访问的内容有条件地呈现内容(例如菜单项)。
我读到没有“break”指令,这对我来说似乎很可笑,所以我开始在模板代码中测试“break”的使用。我最后得到的是:
#foreach ($group in $groupList)
#if (
$group == "administrators" ||
$group == "group-1" ||
$group == "group-2" ||
$group == "group-3" ||
$group == "group-4" ||
$group == "group-5" ||
$group == "group-6"
)
<a href='<redacted link>'><li data-balloon-length="fit" data-balloon="View
your agreements with us, e.g. your customer agreement, or our SLA's" data-
balloon-pos="down">
<i class="fas fa-shower"></i>
<p>
Hygiene
</p>
</li></a>
#break
#else
<a href='<redacted link>'><li class="no-permissions" data-balloon-length="fit"
data-balloon="You have insufficient privileges to view this page" data-
balloon-pos="down">
<i class="fas fa-shower"></i>
<p>
Hygiene
</p>
</li></a>
#break
#end
#end
我对Velocity模板非常陌生,最近有几个月的实践。我看到了一些巨大的优势,能够有条件地呈现内容,而不是例如使用JS或jQuery进行后处理。
我的问题是,我做得对吗?因为从我读到的,
#break
不存在(也许是我发现的旧文档,不确定)。
另外,一个直接的问题是
#中断
指令存在于Apache速度模板中吗?
我想指出的是,这段代码只需要最少的测试就可以工作,任何一个组被正确识别都不是特定的顺序,它只会呈现一个列表项,或者另一个列表项,而不管组的顺序如何。
对不起,我的论文有问题!并提前感谢您的意见。