template tag hbs handlebars example html

html - tag - npm hbs



¿Qué es x-tmpl? (3)

Entonces, ¿qué tipo es text / x-tmpl?

Una no estándar. Aunque parece una plantilla.

¿Cuáles son estas etiquetas {% y%}?

Parte del lenguaje de plantilla.

¿Qué analizador ejecuta este código?

Probablemente uno escrito en JavaScript e importado en otro elemento <script> en la misma página.

Estaba buscando la respuesta en la red, pero no pude encontrar nada. Este pequeño refrigerio de código realmente me frustra, ya que no puedo entenderlo. (Es parte del complemento llamado: carga de archivos jQuery)

<script id="template-download" type="text/x-tmpl"> {% for (var i=0, file; file=o.files[i]; i++) { %} <tr class="template-download fade"> {% if (file.error) { %} <td></td> <td class="name"><span>{%=file.name%}</span></td> <td class="size"><span>{%=o.formatFileSize(file.size)%}</span></td> <td class="error" colspan="2"><span class="label label-important">{%=locale.fileupload.error%}</span> {%=locale.fileupload.errors[file.error] || file.error%}</td> {% } else { %} <td class="preview">{% if (file.thumbnail_url) { %} <a href="{%=file.url%}" title="{%=file.name%}" rel="gallery" download="{%=file.name%}"><img src="{%=file.thumbnail_url%}"></a> {% } %}</td> <td class="name"> <a href="{%=file.url%}" title="{%=file.name%}" rel="{%=file.thumbnail_url&&''gallery''%}" download="{%=file.name%}">{%=file.name%}</a> </td> <td class="size"><span>{%=o.formatFileSize(file.size)%}</span></td> <td colspan="2"></td> {% } %} <td class="delete"> <button class="btn btn-danger" data-type="{%=file.delete_type%}" data-url="{%=file.delete_url%}"> <i class="icon-trash icon-white"></i> <span>{%=locale.fileupload.destroy%}</span> </button> <input type="checkbox" name="delete" value="1"> </td> </tr> {% } %} </script>

  • Entonces, ¿qué tipo es text/x-tmpl ?
  • ¿Cuáles son estas etiquetas {% y %} ?
  • ¿Qué analizador ejecuta este código?
  • ...

... pero me gustaría saber todo sobre esto.



x-tmpl no tiene un significado real, simplemente impide que el navegador interprete el script como javascript.

Se usa principalmente con plantillas jquery o enlaces de plantilla knockoutjs .

En algún punto, se usará un objeto de datos de javascript junto con la plantilla para procesar algunos html. Los valores en el objeto de datos reemplazarán los marcados con {%} y similares en la plantilla, con algunas {%} secciones que reflejan el flujo de código, como bucles, etc.

No estoy seguro de qué biblioteca de plantillas usa {%}, sin embargo, no se trata de plantillas de jquery, jsrender o knockout. Debería verificar a qué bibliotecas se hace referencia en el código de muestra.