忽略Mustache模板中从父上下文继承的属性

时间:2018-05-25 15:21:30

标签: mustache

如何忽略Mustache模板中从父上下文继承的属性?例如,将其视为模板数据:

{
  "name": "Alice",
  "age": 45,
  "children": [
    {
      "name": "Bob",
      "age": 11
    },
    {
      "name": "Clare"
    }
  ]
}

我们可以使用以下模板渲染数据:

<p>{{name}} (age {{age}})</p>
<ul>
  {{#children}}
    <li>{{name}} (age {{age}})</li>
  {{/children}}
</ul>

我们将获得以下HTML:

<p>Alice (age 45)</p>
<ul>
  <li>Bob (age 11)</li>
  <li>Clare (age 45)</li>
</ul>

如果age属性来自当前上下文而不是从父上下文继承,那么如何显示client属性?

1 个答案:

答案 0 :(得分:2)

一种可能的解决方案是确保模板数据中存在空值:

{
  "name": "Alice",
  "age": 45,
  "children": [
    {
      "name": "Bob",
      "age": 11
    },
    {
      "name": "Clare",
      "age": null
    }
  ]
}