ハンドルバーテンプレートでコメントを使用する方法


134

テンプレートエンジンとしてHandlebar.jsを使用しています。次に、ハンドルバーテンプレートのブロックの一部をコメント化します。しかし、HandlebarはHandlebarコメントブロック内の式を無視しないことに気付きました。これの回避策はありますか?



複数行コメントをサポートしますが、その中の式を無視しません。
Abhidev 2013年

回答:


201

ハンドルバーの最新バージョンでは、ブロックコメントがサポートされています。

{{!-- {{commented expressions}} --}}

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


8
jptsetungに感謝します。コメントを期待しているように完全には機能しませんが、それは意図された目的のために機能すると思います。このチュートリアルでは、ハンドルバーが舞台裏でどのように機能するかを確認します。net.tutsplus.com/tutorials/javascript-ajax/…。ハンドルバーはまだトークンを作成しているため、コメント行を完全に無視しないようです。トークンは空です。たとえば、「{{!-Hello {{name}}-}}」は1つの空のトークンを作成します。それが誰かに問題を引き起こすかどうか言及する価値があると思いました。それが舞台裏にあるのでそれがするかどうかわからない。
isimmons 2013

51

開始括弧の後に感嘆符を追加するだけです。

正規表現:

{{expressions}}

コメントされた式:

{{!expressions}}

25
{{!{{!--フォームの違いは、後者のみがハンドルバーの埋め込みタグを許可することです。それは忘れがちなので、特に後で改訂される長いコメントでは、長いコメントフォームを常に使用することをお勧めします。
ダレン・クック

31

ハンドルバーテンプレートファイルでこの方法を使用します。

<div class="entry">
  {{!-- only output author name if an author exists --}}
  {{#if author}}
    <h1>{{author.firstName}} {{author.lastName}}</h1>
  {{/if}}
</div>

コメントは結果の出力には含まれません。コメントを表示したい場合は、HTMLコメントを使用します。

<div class="entry">
  {{! This comment will not be in the output }}
  <!-- This comment will be in the output -->
</div>

このリンクを参照してください


-4

このコードを使用してください:

{{#data}}
<!-- enter comments here  -->
<p>{{name}}</p>
{{/data}}  
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.