Component Patterns
Template Clone Cards
A template element is cloned for each item so client code can render repeated cards without building HTML strings.
Program
template keeps inert markup in the document. JavaScript can clone its content when data arrives.
template_clone_cards.html
<template id="card-template"><article><h2></h2><p></p></article></template>
<section id="cards"></section>
<script>
const template = document.querySelector("#card-template");
const cards = document.querySelector("#cards");
const item = { title: "Latency", body: "42 ms" };
const clone = template.content.cloneNode(true);
clone.querySelector("h2").textContent = item.title;
clone.querySelector("p").textContent = item.body;
cards.append(clone);
</script>
template
template stores markup that is not rendered until cloned.
cloneNode
cloneNode copies a DOM subtree for insertion elsewhere.