如何在Handlebar模板中使用注释?

Abh*_*dev 130 html javascript templates handlebars.js

我使用Handlebar.js作为我的模板引擎.现在我想在我的车把模板中注释掉一些块.但后来我意识到Handlebar不会忽略Handlebar注释块中的表达式.有什么解决方法吗?

jpt*_*ung 187

最新版本的Handlebars具有块注释支持:

{{!-- {{commented expressions}} --}}
Run Code Online (Sandbox Code Playgroud)

https://github.com/wycats/handlebars.js/commit/a927a9b0adc39660f0794b9b210c9db2f7ddecd9

  • 谢谢jptsetung.它没有完全发挥作用,因为我期待评论,但我想它适用于它的预期目的.阅读本教程,了解把手如何在幕后工作.http://net.tutsplus.com/tutorials/javascript-ajax/handlebars-js-a-behind-the-scenes-look/.似乎把手没有完全忽略一条注释线,因为它仍在创建一个令牌.令牌只是空的.例如,"{{! - Hello {{name}} - }}"创建一个空令牌.只是觉得它值得一提,如果它给任何人带来问题.不知道是不是因为它在幕后. (8认同)

小智 50

只需在左括号后添加感叹号即可.

正常表达:

{{expressions}}
Run Code Online (Sandbox Code Playgroud)

评论表达:

{{!expressions}}
Run Code Online (Sandbox Code Playgroud)

  • 请注意,`{{!`和`{{! - `形式之间的区别在于只有后者允许嵌入式把手标签.因为这很容易忘记,特别是在稍后修订的长评论中,我建议总是使用较长的评论表. (24认同)
  • 上面的评论是我一直在寻找的答案。^^ (2认同)

Muk*_*pta 27

在车把模板文件中使用这种方式.

<div class="entry">
  {{!-- only output author name if an author exists --}}
  {{#if author}}
    <h1>{{author.firstName}} {{author.lastName}}</h1>
  {{/if}}
</div>
Run Code Online (Sandbox Code Playgroud)

注释不会出现在结果输出中.如果您希望显示评论,请使用HTML评论.

<div class="entry">
  {{! This comment will not be in the output }}
  <!-- This comment will be in the output -->
</div>
Run Code Online (Sandbox Code Playgroud)

请参考此链接