你如何忽略Mustache.java的标签?

时间:2014-04-02 20:24:38

标签: java mustache templating

我目前正在尝试使用Mustache.java设置在服务器端呈现的网站:https://github.com/spullara/mustache.java

但是,对于某些页面,我还需要在客户端使用Mustache.js进行渲染。但是,Mustache.java处理我想要仅在客户端处理的Mustache中的任何标记。如何让小胡子忽略某些标签?

模板:

<div>{{process_on_backend}}</div>
<script id="mustache-to-be-rendered-in-browser" type="x-tmpl-mustache">
    <div>
        {{process_on_frontend}}
    </div>
</script>

我希望它编译成:

<div>This should be processed.</div>
<script id="mustache-to-be-rendered-in-browser" type="x-tmpl-mustache">
    <div>
        {{process_on_frontend}}
    </div>
</script>

它实际编译的内容:

<div>This should be processed</div>
<script id="mustache-to-be-rendered-in-browser" type="x-tmpl-mustache">
    <div>
        This should not be processed.
    </div>
</script>

我在另一个问题中看到,使用{{={{{ }}}=}}临时更改分隔符可能会有效,但是当我尝试它时,我收到了500错误:com.github.mustachejava.MustacheException: java.lang.StringIndexOutOfBoundsException: String index out of range: 0我很确定它在mustache.java中不受支持。

1 个答案:

答案 0 :(得分:2)

我明白了。出于某种原因使用&#39; {&#39;在新的分隔符似乎把它扔掉了。相反,我使用{{=<% %>=}},它工作正常。