¿Cómo usar los comentarios en las plantillas de manillar?

134

Estoy usando Handlebar.js como mi motor de plantillas. Ahora quiero comentar algunos de los bloques en mis plantillas de manillar. Pero luego me di cuenta de que Handlebar no ignora las expresiones dentro del bloque de comentarios Handlebar. ¿Alguna solución para esto?

Abhidev
fuente
Esta solicitud de extracción puede interesarle.
Frédéric Hamidi
Admite comentarios multilínea, pero no ignora las expresiones que contiene.
Abhidev

Respuestas:

201

La versión más reciente de Handlebars tiene soporte para comentarios de bloque:

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

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

jptsetung
fuente
8
Gracias jptsetung. No funciona completamente como espero un comentario, pero supongo que funciona para el propósito previsto. Revisando este tutorial para ver cómo funciona el manillar detrás de escena. net.tutsplus.com/tutorials/javascript-ajax/… . Parece que el manillar no ignora por completo una línea comentada porque todavía está creando un token. La ficha está vacía. Por ejemplo, "{{! - Hola {{name}} -}}" crea 1 token vacío. Solo pensé que vale la pena mencionar si alguna vez causa problemas a alguien. No sé si lo haría, ya que está detrás de escena.
isimmons
51

Simplemente agregue un signo de exclamación después de los corchetes de apertura.

Expresión normal:

{{expressions}}

Expresión comentada:

{{!expressions}}
James Jackson
fuente
25
Tenga en cuenta que la diferencia entre {{!y los {{!--formularios es que solo este último permite etiquetas de manillar incrustadas. Como será fácil de olvidar, especialmente en un comentario largo que luego se revisa, sugeriría usar siempre el formulario de comentarios más largo.
Darren Cook
31

Úselo de esta manera en su archivo de plantilla de manillar.

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

Los comentarios no estarán en la salida resultante. Si desea que aparezcan los comentarios, utilice los comentarios HTML.

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

consulte este enlace a

Mukesh Kumar Gupta
fuente
-4

Usa este código:

{{#data}}
<!-- enter comments here  -->
<p>{{name}}</p>
{{/data}}  
valavan
fuente