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.getElementByIddocument.getElementByIdottiene 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.getElementByIdrecupera l'elemento con l'ID specificato e ti consente di accedere al suo contenuto se esiste.`.
document.querySelectordocument.querySelectorrecupera 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.querySelectorrecupera il primo elemento che corrisponde al selettore CSS specificato e ti consente di accedere al suo contenuto se esiste.`.
document.querySelectorAlldocument.querySelectorAllrecupera 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.querySelectorAllrecupera 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à
textContentoinnerHTML.
1const element = document.getElementById('myElement');
2if (element) {
3 element.textContent = 'New Text'; // Set the text content to 'New Text'
4}- Puoi usare
textContentoinnerHTMLdi 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à
styledell’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
hrefdel 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
activee rimuove la classeinactiveda 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.createElementper 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
removeChildoremove.
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.