Manipolazione del DOM in TypeScript
Questo articolo spiega la manipolazione del DOM in TypeScript.
Imparerai come manipolare gli elementi del DOM e come aggiungere o rimuovere elementi dall’albero DOM attraverso esempi di codice.
YouTube Video
Manipolazione del DOM in TypeScript
La manipolazione del DOM in TypeScript viene eseguita in modo simile a JavaScript, ma TypeScript fornisce il controllo dei tipi, rendendo le operazioni più sicure. Il DOM (Document Object Model) è un modello a oggetti utilizzato per manipolare i documenti HTML e XML tramite programmazione. Consente di accedere alle pagine visualizzate nel browser, aggiungere o rimuovere elementi o modificarne gli stili.
Presentiamo ora i metodi di base per manipolare il DOM utilizzando TypeScript.
Ottenere gli elementi del DOM
Utilizza l’oggetto document
per ottenere elementi HTML. Sono comunemente usati i seguenti metodi:.
document.getElementById
document.getElementById
ottiene l'elemento con l'attributo ID specificato.`.
1// Type is HTMLElement | null
2const element = document.getElementById('myElement');
3if (element) {
4 console.log(element.innerHTML);
5}
document.getElementById
recupera l'elemento con l'ID specificato e ti consente di accedere al suo contenuto se esiste.`.
document.querySelector
document.querySelector
recupera il primo elemento che corrisponde al selettore CSS.`.
1// Type is Element | null
2const element = document.querySelector('.myClass');
3if (element) {
4 console.log(element.textContent);
5}
document.querySelector
recupera il primo elemento che corrisponde al selettore CSS specificato e ti consente di accedere al suo contenuto se esiste.`.
document.querySelectorAll
document.querySelectorAll
recupera tutti gli elementi che corrispondono al selettore CSS.`.
1// Type is NodeListOf<HTMLDivElement>
2const elements = document.querySelectorAll('div');
3elements.forEach((el) => console.log(el.innerHTML));
document.querySelectorAll
recupera tutti gli elementi che corrispondono al selettore CSS specificato e ti consente di accedere al loro contenuto tramite iterazione.`.
Asserzione del Tipo di Elemento
In TypeScript, asserire esplicitamente il tipo di un elemento ti consente di utilizzare metodi e proprietà più specifiche.
1const inputElement = document.getElementById('myInput') as HTMLInputElement;
2if (inputElement) {
3 console.log(inputElement.value); // Access the value property of the input element
4}
- La parola chiave
as
è un operatore di asserzione di tipo in TypeScript, utilizzato per dire esplicitamente al compilatore di trattare un valore come un tipo specifico. - In TypeScript, puoi usare le asserzioni di tipo per trattare l'elemento recuperato come un tipo specifico e accedere a proprietà o metodi specifici di quel tipo.
Manipolazione del DOM
La manipolazione del DOM viene eseguita tramite le proprietà degli elementi. Questo permette di controllare in modo flessibile le modifiche al testo o agli attributi, applicare stili e aggiornare i contenuti visualizzati.
-
Modifica del testo di un elemento
Puoi modificare il testo o l’HTML di un elemento utilizzando le sue proprietà
textContent
oinnerHTML
.
1const element = document.getElementById('myElement');
2if (element) {
3 element.textContent = 'New Text'; // Set the text content to 'New Text'
4}
- Puoi usare
textContent
oinnerHTML
di un elemento per modificarne il testo visualizzato o il contenuto HTML.
-
Modifica dello stile di un elemento
Puoi modificare gli stili in linea usando la proprietà
style
dell’elemento.
1const element = document.getElementById('myElement');
2if (element) {
3 element.style.color = 'blue';
4 element.style.fontSize = '20px';
5}
- Questo codice recupera un elemento specifico, cambia il colore del suo testo in blu e imposta la dimensione del carattere a 20px.
-
Modifica degli attributi di un elemento
Se desideri modificare gli attributi di un elemento, usa
setAttribute
.
1const link = document.querySelector('a');
2if (link) {
3 link.setAttribute('href', 'https://example.com');
4}
- Questo codice cambia l'attributo
href
del primo elemento di collegamento nella pagina inhttps://example.com
.
-
Gestione delle classi degli elementi
Per aggiungere o rimuovere le classi degli elementi, usa
classList
.
1const element = document.getElementById('myElement');
2if (element) {
3 element.classList.add('active');
4 element.classList.remove('inactive');
5}
- Questo codice aggiunge la classe
active
e rimuove la classeinactive
da un elemento specifico.
Aggiungere e rimuovere elementi DOM
Puoi anche aggiungere nuovi elementi o rimuovere quelli esistenti. Ciò rende possibile modificare dinamicamente la struttura della pagina in risposta alle azioni dell'utente o allo stato dell'applicazione.
-
Creazione e aggiunta di nuovi elementi
Usa
document.createElement
per creare un nuovo elemento e aggiungerlo al DOM.
1const newDiv = document.createElement('div');
2newDiv.textContent = 'New Element'; // Set the text content to 'New Element'
3document.body.appendChild(newDiv); // Add the new element to the body
- Questo codice crea un nuovo elemento
<div>
, ne imposta il testo e lo aggiunge al<body>
della pagina.
-
Rimozione degli elementi
Per rimuovere un elemento, usa i metodi
removeChild
oremove
.
1const parentElement = document.getElementById('parentElement');
2const childElement = document.getElementById('childElement');
3if (parentElement && childElement) {
4 parentElement.removeChild(childElement); // Remove the child element
5}
6
7// Alternatively
8const element = document.getElementById('myElement');
9if (element) {
10 element.remove(); // Remove the element itself
11}
- Questo codice mostra come rimuovere un elemento figlio specifico dal suo genitore e come rimuovere direttamente l'elemento stesso.
Aggiunta di eventi
In TypeScript, puoi aggiungere event listener agli elementi per eseguire azioni in base alle interazioni dell’utente.
1const button = document.getElementById('myButton');
2if (button) {
3 button.addEventListener('click', () => {
4 console.log('Button was clicked'); // Log when the button is clicked
5 });
6}
- Questo codice aggiunge un listener di eventi che visualizza un messaggio nella console quando il pulsante viene cliccato.
- Utilizzando
addEventListener
, puoi ascoltare e gestire vari eventi come clic, movimenti del mouse e input da tastiera.
Punti da considerare per la manipolazione del DOM in TypeScript
Quando manipoli il DOM con TypeScript, prestare attenzione alle definizioni dei tipi di elemento e ai controlli null
può aiutare a prevenire errori e consentire di scrivere codice solido.
-
Controllo del valore Null
Poiché un elemento DOM potrebbe non esistere, è consigliabile effettuare un controllo sul valore null prima di manipolare gli elementi in TypeScript.
-
Asserzione esplicita del tipo
Quando si opera su un elemento specifico (ad esempio un
HTMLInputElement
), è comune usare un’asserzione (as
) per specificare il tipo e utilizzare proprietà specifiche dell’elemento comevalue
.
Tenendo a mente questi punti, la manipolazione del DOM con TypeScript ti consente di scrivere codice più sicuro e prevedibile, combinando la flessibilità di JavaScript con la sicurezza dei tipi di TypeScript.
Puoi seguire l'articolo sopra utilizzando Visual Studio Code sul nostro canale YouTube. Controlla anche il nostro canale YouTube.