如何使用免费标记获取列表中的第一项?
How can I get the first item in a list using free marker?
我有以下代码,其中包含大约 12 个项目,但我只需要检索第一个项目。如何显示列表中的第一项?
我的代码是:
<#list analysttest.rss.channel.item as item>
<div>
<h3 class="bstitle">${item.title}</h3>
<span class="bsauthor">${item.author}</span>
<span>${item.pubDate}</span>
<p>${item.description}</p>
</div>
</#list>
<#assign item = analysttest.rss.channel.item[0]>
<div>
<h3 class="bstitle">${item.title}</h3>
<span class="bsauthor">${item.author}</span>
<span>${item.pubDate}</span>
<p>${item.description}</p>
</div>
analysttest.rss.channel.item[0]
给出了第一个项目,为了方便,你可以 #assign
给一个更短的名字。请注意,必须至少存在 1 个项目,否则会出现错误。 (或者,你可以做类似 <#assign item = analysttest.rss.channel.item[0]!someDefault>
的事情,其中 someDefault
就像 ''
、[]
、{}
等,这取决于你的需要。甚至一个较短的 <#assign item = analysttest.rss.channel.item[0]!>
形式,它使用多类型 "generic nothing" 值作为默认值...请参阅手册。)
列表也是可能的,尽管只有一项是奇数:<#list analysttest.rss.channel.item[0..*1] as item>
,其中 *1
表示最大长度为 1(需要 FreeMarker 2.3.21 或更高版本)。即使您有 0 个项目,这也有效(并且不输出任何内容)。
我有以下代码,其中包含大约 12 个项目,但我只需要检索第一个项目。如何显示列表中的第一项?
我的代码是:
<#list analysttest.rss.channel.item as item>
<div>
<h3 class="bstitle">${item.title}</h3>
<span class="bsauthor">${item.author}</span>
<span>${item.pubDate}</span>
<p>${item.description}</p>
</div>
</#list>
<#assign item = analysttest.rss.channel.item[0]>
<div>
<h3 class="bstitle">${item.title}</h3>
<span class="bsauthor">${item.author}</span>
<span>${item.pubDate}</span>
<p>${item.description}</p>
</div>
analysttest.rss.channel.item[0]
给出了第一个项目,为了方便,你可以 #assign
给一个更短的名字。请注意,必须至少存在 1 个项目,否则会出现错误。 (或者,你可以做类似 <#assign item = analysttest.rss.channel.item[0]!someDefault>
的事情,其中 someDefault
就像 ''
、[]
、{}
等,这取决于你的需要。甚至一个较短的 <#assign item = analysttest.rss.channel.item[0]!>
形式,它使用多类型 "generic nothing" 值作为默认值...请参阅手册。)
列表也是可能的,尽管只有一项是奇数:<#list analysttest.rss.channel.item[0..*1] as item>
,其中 *1
表示最大长度为 1(需要 FreeMarker 2.3.21 或更高版本)。即使您有 0 个项目,这也有效(并且不输出任何内容)。