Template engine - Yzerrr/project-t GitHub Wiki
Om aan te geven dat er stuk JavaScript aankomt gebruik je de <% %> tags tussen je normale html. Ik heb daarom ook gekozen om EJS te gebruiken. Je html structuur blijft nagenoeg hetzelfde. EJS heeft verschillende tag variaties.
- <% 'Scriptlet' tag, for control-flow, no output
- <%_ ‘Whitespace Slurping’ Scriptlet tag, strips all whitespace before it
- <%= Outputs the value into the template (HTML escaped)
- <%- Outputs the unescaped value into the template
- <%# Comment tag, no execution, no output
- <%% Outputs a literal '<%'
- %> Plain ending tag
- -%> Trim-mode ('newline slurp') tag, trims following newline
- _%> ‘Whitespace Slurping’ ending tag, removes all whitespace after it
Handelbars gebruikt dubbele {{ }} om aan te geven dat er een stuk JavaScript komt. Persoonlijk vind ik Handlbars niet echt beginners vriendelijk. Met alleen de language guide kwam ik er niet uit. Ik was er al snel van overtuigt dat Handlebars niet in mijn project zou eindigen.
<div class="entry">
{{#unless license}}
<h3 class="warning">WARNING: This entry does not have a license!</h3>
{{/unless}}
</div>
Pugjs laat juist een aantal elementen van html < > weg. De structuur blijft wel het zelfde maar doordat je niet duidelijk kunt zien waar een tag open en sluit kan dit misschien wat verwarrend zijn.
//- new
a(href=link)
//- (on Node.js/io.js ≥ 1.0.0)
a(href=`before${link}after`)
//- (everywhere)
a(href='before' + link + 'after')