字面部分与Mustache Php / Js?

时间:2015-12-15 08:57:34

标签: javascript php mustache template-engine

我正在使用Mustache在PHP端和Javascript端使用相同的模板,如下所示:

{{> myTemplate}}

<script id="myTemplate" type="x-tmpl-mustache">
    {{> myTemplate}}
</script>

问题:在页面加载时,两个“脚本”标记之间包含的部分“myTemplate”被我的PHP中的数据更改。我需要它不变,以便与我的javascript一起使用。

请问有办法吗?

编辑:

除了Mustache之外,我找到了一个解决方案:Chevron.js(一个jQuery插件)。我做了这样的事情:

HTML:

<head>
    <link href="templates/myTemplate.mustache" rel="template" id="myTemplate" />
</head>

的javascript:

$("#myTemplate").Chevron('render', data, function (html) {
    // do something with 'html'
});

1 个答案:

答案 0 :(得分:0)

使用Contemplate,您可以执行以下操作:

<% %>
<!-- server-side template -->
<% $server_data %>
<script id="myTemplate" type="x-contemplate">{% %}
     <!-- client-side template -->    
      {% $client_data %}
</script>

每个模板以模块化方式定义自己的分隔符,因此任何模板组合和嵌套,例如服务器端模板包括客户端模板,都是最佳处理(参见相关问题) ,https://github.com/foo123/Contemplate/issues/5