在我的节点服务器交付的 .hbs 中:
<script src="/javascripts/handlebars.min-latest.js"></script>
<script id="entry-template" type="text/x-handlebars-template">
<div class="entry">
<h3>{{title}}</h3>
<div class="body">
{{body}}
</div>
</div>
</script>
在我的客户端 javascript 文件中:
var source = $("#entry-template").html();
var template = Handlebars.compile(source);
var context = {title: "My New Post", body: "This is my first post!"};
var html = template(context);
console.log(html);
我的输出:
<div class="entry">
<h3></h3>
<div class="body">
</div>
</div>
基本上,即使在他们的首页上有最简单的例子,它也不起作用。是因为我在前端和后端都使用了 Handlebars 吗?如果是这样,我该如何解决?
最佳答案
如果您在后端和前端都使用 Handlebars,则有一个简单的解决方法。只需像 \{{myVar}} 一样通过在它们的前面添加一个 \ 来转义为您的前端解析器准备的变量,并保留要使用的变量由服务器解析为{{myServerVar}}。
<script type="text/x-handlebars-template" id="my-row-template">
<tr>
<td></td>
<td>\{{fieldName}}</td>
</tr>
</script>
关于javascript - Handlebars 示例不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40166603/