Handlebars.js不会解析代码,如果我将其放在/ etc中。 只要在外面,它就可以正常工作。
<script id="entry-template" type="text/x-handlebars-template">
<div class="entry">
{{#each this}}
<h1>{{title.rendered}}</h1>
<div>{{content.rendered}}</div>
<img src="{{url}}" alt=""/>
{{/each}}
</div>
</script>
我希望得到
<img src="http://localhost/image.jpg" alt=""/>
但输出如下:
<img src="{{url}}" alt=""/>
似乎其他所有方法都起作用。循环也是如此。
答案 0 :(得分:1)
使用
<script id="t" type="text/x-handlebars-template">
<img class="someClass" src="{{url}}">
</script>
模板很少有效且格式正确,因此您需要 阻止浏览器尝试将模板解释为HTML。通常 方法是将模板存储在非HTML类型的
中
或使用三括号
<img src="{{{your source}}}" alt={{{your alt}}} />
Handlebars HTML-escapes values returned by a {{expression}}. If you don't want Handlebars to escape a value, use the "triple-stash",
{{{ {{{foo}}}
来源:http://handlebarsjs.com/expressions.html
通过以下网址找到:https://github.com/wycats/handlebars-site/issues/28