小编G M*_*awr的帖子

小胡子模板:如何为非空列表仅输出一次块

如果我的列表为空,我想输出:

<div id="some-id">
</div>
Run Code Online (Sandbox Code Playgroud)

如果我的列表非空,我想输出:

<div id="some-id">
  <ul>
    <li>Item 1</li>
    <li>Item 2</li>
    <li>etc</li>
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

请注意,我最多只输出一次<ul> and </ul>标签,并且仅在列表非空时输出.

下面的代码接近我在PHP中如何做到这一点,但显然是错误的:

<div id="some-id">
{{#items}}
  <ul>
{{/items}}

{{#items}}
    <li>{{name}}</li>
{{/items}}

{{#items}}
  </ul>
{{/items}}
</div>
Run Code Online (Sandbox Code Playgroud)

如果items是一个3项目列表,我将得到3 <ul>- 显然不是我想要的.

我意识到我可以设置一些其他键作为布尔标志(hasItems也许),但这感觉多余.

是否有一种更优雅的方式我只能为非空列表输出一次块?

mustache

14
推荐指数
2
解决办法
4204
查看次数

标签 统计

mustache ×1