我需要使用handlebars.js,我还使用Laravel的Blade模板引擎(PHP Framework).标签{{}}与刀片的占位符冲突完全相同.
如何将{{var}}更改为<%var%>?
有人可以告诉我如何更改mustache.js的默认分隔符?默认分隔符是{{var}},我想将其更改为{|var|}
我有以下代码:
$('body').append(Mustache.render(this.template, data));
Run Code Online (Sandbox Code Playgroud)
非常感谢
我正在使用Laravel,我的所有模板都使用Blade模板.页面的一些部分需要在服务器端和JavaScript上呈现.对于这些我使用的是Mustache模板(带有胡子-l4).
问题是如何让Laravel渲染模板,还要将它们包含在Mustache标记完整的页面中,以便JS获取.
例如,如果我有一个(简化示例)Blade模板,如下所示:
<html>
<head></head>
<body>
<h1>{{ $pageTitle }}</h1>
@include('partials/'.$partialName, array('some_text' => $pageText))
<script type="text/mustache">
@include('partials/'.$partialName)
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
其中包括.mustache部分内容:
{{#some_text}}
<p>{{some_text}}</p>
{{/some_text}}
Run Code Online (Sandbox Code Playgroud)
Mustache partial在页面加载时呈现得很好.但是当它包含在<script></script>标签之间时,我希望它逐字呈现.即,{{#some_text}}Mustache标签应该在呈现的HTML中.然后JavaScript可以将其作为Mustache模板读取.
我可以通过更改服务器端(Blade)模板上的标记分隔符来实现这一点,但是在这个阶段,已经有大量的Blade模板工作了,我宁愿也不行.
我无法理解如何做到这一点.我可以在其中包含的一个时间内更改Mustache分隔符,因此它只能完全渲染吗?