Вы можете использовать строковые литералы DOMParser
и ES6:
const template = text => (
`
<div class="myClass">
<h1>${text}</h1>
</div>
`);
Вы можете создать в памяти Фрагмент:
const fragment = document.createDocumentFragment();
const parser = new DOMParser();
const newNode = parser.parseFromString(template('Hello'), 'text/html');
const els = newNode.documentElement.querySelectorAll('div');
for (let index = 0; index < els.length; index++) {
fragment.appendChild(els[index]);
}
parent.appendChild(fragment);
Поскольку фрагмент документа находится в памяти и не является частью основного дерева DOM, добавление дочерних элементов к нему не вызывает перекомпоновку страницы (вычисление положения и геометрии элемента). Исторически использование фрагментов документа могло привести к повышению производительности.
Источник: https://developer.mozilla.org/en-US/docs/Web/API/Document/createDocumentFragment
По сути, вы можете использовать любой шаблон, какой захотите, потому что это просто функция, которая возвращает строку, которую вы можете передать в анализатор.
Надеюсь, это поможет