L'utilizzo di un template è una pratica comune in tutti i framework SPA: creando una parte di codice, essa può essere replicata e riutilizzata all'interno di una o più sezioni della pagina. La medesima pratica può essere utilizzata anche all'interno di una normale pagina html utilizzando il tag template e poche righe JavaScript.
Iniziamo dal definire un template, una sezione in cui inserire il template e un bottone che utilizzeremo per eseguire il codice JavaScript.
<template id="my-template">
<p>questo è un template</p>
</template>
<button type="button" onclick="insertTemplate()">Insert</button>
<div class="container">
</div>È importante ricordare che nulla di quello inserito all'interno del tag template verrà mostrato a video, potremmo dunque inserirlo nella sezione di pagina più comoda per noi.
Passiamo ora ai metodi che ci permetteranno di inserirlo in un punto a nostra scelta: partendo dal template stesso, ne creiamo una copia, in modo che la versione originale rimanga inalterata per un possibile utilizzo futuro, e lo inseriamo all'interno del contenitore.
function insertTemplate() {
const template = document.getElementById("my-template");
const clone = template.content.cloneNode(true);
document.querySelector('.container').appendChild(clone);
// se non volessi che ad un secondo click mi inserisca un altro template
template.innerHTML = "";
}
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Fornire parametri ad un Web component HTML
Managed deployment strategy in Azure DevOps
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
Utilizzare Intersect e Except per filtrare set di dati in TSql
Utilizzare i variable font nel CSS
Creare una libreria CSS universale: Clip-path
Evitare memory leaks nelle closure JavaScript
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Esporre un server MCP esistente con Azure API Management
Il nuovo controllo Range di Blazor 9
Integrazione di Copilot in .NET Aspire
Disabilitare le run concorrenti di una pipeline di Azure DevOps


