我有一个简单菜单的速度代码:
<div id="header" class="navstrip">
#foreach( $navItem in $navItems )
<a href="$navItem.URL">$navItem.Title</a> |
#end
</div>
Run Code Online (Sandbox Code Playgroud)
我想给最后一个菜单链接一个"最后"的类.有条件的是什么?
由于某种原因,检测最后一项是Velocity中最多的错误点,我创建了3个关于它的错误报告,即使它说它们已经解决了 - 但它仍然不能完全符合我的知识.
如果您使用的是Velocity 1.6及更低版本,则有以下选项:
1)使用循环工具
#foreach( $navItem in $loop.watch($navItems) )
#if($loop.last)
last
#end
#end
Run Code Online (Sandbox Code Playgroud)
但是这不起作用(参见bug#1)
2)使用内部计数器$velocityCount:
#foreach( $navItem in $navItems)
#if($velocityCount == $navItems.size())
last
#end
#end
Run Code Online (Sandbox Code Playgroud)
这有效.
在速度1.7:
1)你应该可以使用$foreach.last:
#foreach( $navItem in $navItems)
#if($foreach.last)
last
#end
#end
Run Code Online (Sandbox Code Playgroud)
2)将当前计数器与列表大小进行比较:
#foreach( $navItem in $navItems)
#if($foreach.count == $navItems.size())
last
#end
#end
Run Code Online (Sandbox Code Playgroud)
这有效.
是的,这么简单的任务和许多麻烦.
| 归档时间: |
|
| 查看次数: |
5050 次 |
| 最近记录: |