21

如何在 Mustache 模板中使用文字“{{”?

附带说明一下,如果我使用自定义标签,比如<%and %>,有没有办法写“<%”?

从理论上讲,我可以使用不同的标签,但我有太多的代码使用{{}}改变它。

4

4 回答 4

51

只需临时更改分隔符:

{{=<% %>=}}
{{Look at the curlies!}}
<%={{ }}=%>
于 2012-12-04T03:03:38.753 回答
3

假设您正在输出 HTML,您可以使用 HTML 实体来避免它(mustache 没有任何方法可以转义内置的开始标签)。

所以要输出{{你会写&#123;{.
要输出<%你会写&lt;%.

于 2012-06-15T00:03:05.693 回答
3

您可以{{很容易地单独使用。如果您尝试记录类似的{{example}}内容,则可以始终将前两个 cur 与您的数据一起传递。

orphaned curlies are easy {{ <br>
{{curly}}example}} curlies are harder

一些简单的渲染:

var data = { 'curly' : '{{'},
    tpl = $('#curly').html(),
    html = Mustache.to_html(tpl, data);

document.write(html);​

结果是:

orphaned curlies are easy {{ 
{{example}} curlies are harder

这是完整的工作 jsFiddle

于 2012-06-15T21:48:24.930 回答
0

您只需在模板中添加几个花括号即可实现结果,
例如: data: const data = {"charsToBeEscaped": "<%"}template: a special char like that is perfectly rendered! {{{charsToBeEscaped}}},它会生成: is perfectly rendered! <%

于 2017-09-25T09:36:10.427 回答