Skip to content

Instantly share code, notes, and snippets.

@mjumbewu
Created June 18, 2018 19:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mjumbewu/d7e82fee9aa416aced0425d90e628447 to your computer and use it in GitHub Desktop.
Save mjumbewu/d7e82fee9aa416aced0425d90e628447 to your computer and use it in GitHub Desktop.
{# template.html #}
<html>
<ul>
{{#each elems}}
{{>childelem}}
{{/each}}
</ul>
</html>
{# childelem.html #}
<li>{{name}}</li>
// template.js
var {each} = require('jstemplates/utils');
var childelem = require('jstemplates/package/childelem');
function render(data) {
return `
<html>
<ul>
${data.elems.map(childelem.render).join('')}
${each(data.elems, childelem.render)}
</ul>
</html>`
}
// childelem.js
function render(elem, index, elems) {
let classes = (index == elems.length - 1 ? 'last' : '');
return `<li class="${classes}">${elem.name}</li>`
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment