Mustache 是一種輕量級(jí)的模板語(yǔ)言,它的語(yǔ)法簡(jiǎn)潔易懂。以下是 Mustache 的語(yǔ)法規(guī)則:
1. 變量替換
Mustache 用 {{ 和}} 表示變量的替換,例如:
Hello, {{name}}!
在渲染時(shí),{{name}} 會(huì)被替換成相應(yīng)的值,例如:
Hello, John!
2. 列表迭代
使用 {{#}} 和 {{/}} 來(lái)表示列表迭代,例如:
<ul>
{{#items}}
<li>{{.}}</li>
{{/items}}
</ul>
在渲染時(shí),items列表中的每個(gè)元素都會(huì)被替換成相應(yīng)的 <li> 元素。
3. 條件判斷
使用 {{#}} 和 {{/}} 來(lái)表示條件判斷,例如:
{{#show}}
This is shown!
{{/show}}
如果 show 的值為真,則會(huì)顯示 This is shown!。
4 反轉(zhuǎn)條件判斷
使用 {{^}} 和 {{/}} 來(lái)表示反轉(zhuǎn)條件判斷,例如:
{{^hide}}
This is shown!
{{/hide}}
如果 hide 的值為假,則會(huì)顯示 This is shown!。
帶默認(rèn)值的變量替換
使用{{variable_name | default_value}} 來(lái)表示帶默認(rèn)值的變量替換,例如:
Hello, {{name | Stranger}}!
如果 name 的值為空,則會(huì)顯示 Hello, Stranger!。
- HTML 轉(zhuǎn)義
在變量替換時(shí),Mustache 會(huì)自動(dòng)對(duì) HTML 進(jìn)行轉(zhuǎn)義,以防止 XSS 攻擊。如果想要顯示 HTML 標(biāo)簽,可以使用三個(gè)大括號(hào) {{{ 和 }}} 來(lái)表示不轉(zhuǎn)義的變量替換,例如:
{{{html}}}
- 注釋
使用 {{! comment }} 來(lái)表示注釋,例如:
{{! This is a comment. }}