我正在使用 mustache 模板引擎,我只想显示长列表中的第一项,但似乎找不到这样做的文档?
如果我使用:
{{# links}}<a href="{{& url}}">{{& title }}</a>{{/ links}}
我得到了所有的链接,但是我只希望显示第一个链接,听起来很简单,但我找不到任何关于此的文档。
我正在使用 mustache 模板引擎,我只想显示长列表中的第一项,但似乎找不到这样做的文档?
如果我使用:
{{# links}}<a href="{{& url}}">{{& title }}</a>{{/ links}}
我得到了所有的链接,但是我只希望显示第一个链接,听起来很简单,但我找不到任何关于此的文档。
此解决方案适用于新版本的 Mustache.js(仅限):
mustache.render("{{a.0}}", {a: ['hi','world']})
=> 'hi'
@Millad 提出的解决方案几乎对我有用。使用 handlebars.js 虽然我不得不用括号来使用它。
{{ a.[0] }}
=> 你好
res.render('view', { a: ['hello', 'world'] })
Mustache has 没有逻辑,来自文档:
我们称其为“无逻辑”,因为没有 if 语句、else 子句或 for 循环。相反,只有标签。一些标签被替换为一个值,一些什么都没有,而另一些则是一系列值。本文档解释了不同类型的 Mustache 标签。
所以你本质上想要的是一种机制来做if link is the first
- 所以你可以在数据方面处理这个问题,只在你的数据中放置一个元素,或者通过添加一块数据,比如当你将数据放入时添加一个像这样的值display
并将其设置为“内联”或“无”,然后在您的模板中执行以下操作:
{{# links}}<a href="{{& url}}" style="display: {{display}};">{{& title }}</a>{{/ links}}
然后,稍后,您可以在页面中调用脚本来更改style.display
对某些用户或应用程序的操作。
data = data[0]
这些是我的第一个,尽管为这个特定模板设置可能更容易。问题是您可能想在某个时候使用整个列表,以评论我需要查看更多您的使用情况以及数据的填充位置。