如何使用小胡子切换表格列?

时间:2016-12-14 13:39:31

标签: mustache

假设我有一个订单列表。订单由订单商品组成 物品可能有指定的材料。订单呈现为 只有(至少)一个,才能显示表格和材料列 这些物品有它。换句话说,空的“材料”列应该 不显示。

以下是一个示例模板:

(原谅我的HTML。我没有去看那个。)

<table>
  <th>name</th>
  <th>quantity</th>
  <th>made of</th>
  {{#items}}
    <tr>
      <td>{{name}}</td>
      <td>{{qty}}</td>
      <td>{{material}}</td>
    </tr>
  {{/items}}
</table>

假设Wile E. Coyote试图抓住Road Runner并命令一些TNT和 绳:

{
  "customer" : "Wile E. Coyote",
  "items" :
  [
    { "name" : "TNT", "qty" : 2 },
    { "name" : "rope", "qty" : 10, "material" : "nylon" }
  ]
}

输出如下:

<table>
  <th>name</th>
  <th>quantity</th>
  <th>made of</th>
  <tr>
    <td>TNT</td>
    <td>2</td>
    <td></td>
  </tr>
  <tr>
    <td>rope</td>
    <td>10</td>
    <td>nylon</td>
  </tr>
</table>

但如果他订购铁砧而不是绳索:

{
  "customer" : "Wile E. Coyote",
  "items" :
  [
    { "name" : "TNT", "qty" : 2 },
    { "name" : "anvil", "qty" : 1 }
  ]
}

将呈现一个丑陋的空“由...制成”列:

<table>
  <th>name</th>
  <th>quantity</th>
  <th>material</th>
  <tr>
    <td>TNT</td>
    <td>2</td>
    <td></td>
  </tr>
  <tr>
    <td>anvil</td>
    <td>1</td>
    <td></td>
  </tr>
</table>

如何修改我的模板才能获得此功能?

<table>
  <th>name</th>
  <th>quantity</th>
  <tr>
    <td>TNT</td>
    <td>2</td>
  </tr>
  <tr>
    <td>anvil</td>
    <td>1</td>
  </tr>
</table>

我也控制JSON并且也可以修改它。但我更愿意 不要。

0 个答案:

没有答案