Nello sviluppo web, ci sono molti strumenti a disposizione degli sviluppatori tra cui scegliere. La scelta degli strumenti e delle tecnologie giuste può avere un impatto significativo sull’efficienza e sulla funzionalità dei progetti. Uno degli strumenti più popolari nello sviluppo web è EJS, che sta per Embedded JavaScript . EJS è un semplice linguaggio di template JavaScript che genera HTML con semplice JavaScript. In questo articolo tratteremo cos'è EJS, perché è necessario, le sue funzionalità, come installarlo e forniremo un esempio con l'output.
Cos'è l'EJS
EJS o Embedded JavaScript è un motore di modelli per JavaScript utilizzato per lo sviluppo web che consente agli utenti di generare markup HTML dinamico utilizzando il codice JavaScript all'interno dei modelli HTML. È progettato per semplificare il processo di rendering di contenuti dinamici nelle applicazioni web. Contiene una combinazione di HTML e JavaScript che semplifica la generazione di contenuti dinamici basati sui dati della tua applicazione.
Caratteristiche dell'EJS
- Sintassi semplice: EJS offre una sintassi semplice che combina HTML e JavaScript, facilitandone l'apprendimento e l'utilizzo.
- Contenuto dinamico: EJS consente la generazione dinamica di contenuti HTML e JavaScript all'interno dei tag HTML, migliorando la flessibilità nella creazione di contenuti.
- Layout e parziali: EJS supporta layout e partial, consentendo agli utenti di suddividere i modelli in componenti riutilizzabili, riducendo la duplicazione del codice e migliorando la manutenibilità.
- Gestione degli errori: EJS fornisce messaggi di errore che aiutano gli sviluppatori nel debug, migliorando l'esperienza di sviluppo complessiva.
Perché hai bisogno di EJS?
- Generazione HTML dinamico: EJS ti consente di generare contenuto HTML dinamico basato su variabili, condizioni, loop e altra logica JavaScript. Ciò è particolarmente utile per il rendering di dati dinamici recuperati da database o API.
- Riutilizzabilità del codice: Utilizzando i modelli EJS, è possibile creare componenti o partial riutilizzabili che possono essere inclusi in più pagine. Ciò promuove la modularità del codice e riduce la duplicazione nelle applicazioni web.
- Rendering lato server: Con EJS è possibile eseguire il rendering lato server (SSR) delle pagine Web. SSR è vantaggioso per la SEO (Search Engine Optimization) in quanto consente ai motori di ricerca di eseguire la scansione e indicizzare i tuoi contenuti in modo più efficace rispetto al rendering lato client (CSR) eseguito da framework come React o Angular.
- Facile integrazione con Node.js ed Express.js: EJS si integra perfettamente con Node.js ed Express.js, rendendolo una scelta popolare per gli sviluppatori che lavorano su applicazioni JavaScript lato server. È facile da configurare e utilizzare all'interno di un progetto Express.js.
- Sintassi familiare: Se hai già familiarità con HTML e JavaScript, imparare e utilizzare EJS è semplice. La sintassi è simile all'HTML con codice JavaScript incorporato racchiuso
>tag, rendendolo accessibile a sviluppatori con diversi livelli di abilità. - Ereditarietà e layout dei modelli: EJS supporta l'ereditarietà e i layout dei modelli, consentendoti di creare layout coerenti per le tue pagine web. Puoi definire un layout di base ed estenderlo in altri modelli, semplificando il mantenimento di un aspetto coerente in tutta l'applicazione.
Come utilizzare EJS?
Passo 1: Installa EJS come dipendenza nel tuo progetto
quadro di raccolta Java
npm install ejs>
Passo 2: Crea una cartella 'views' nella directory del tuo progetto se non esiste già. All'interno della cartella views, crea un nuovo file con estensione .ejs, ad esempio index.ejs
Passaggio 3: Per integrare EJS con Express in un'applicazione Express.js, imposta EJS come motore di visualizzazione nella configurazione dell'app Express. Questa configurazione consente a Express di utilizzare EJS per il rendering delle viste.
app.set('view engine', 'ejs');>Passaggio 4: Rendering del modello EJS, nei gestori del percorso Express eseguiamo il rendering del modello EJS utilizzando ‘res.render()’ e fornire i dati necessari da passare al modello.
res.render('hello', { name: 'Geeks' });>Struttura del progetto:

Le dipendenze aggiornate in pacchetto.json il file sarà simile a:
'dependencies': { 'ejs': '^3.1.9', 'express': '^4.18.2' }>Esempio: Implementazione per mostrare l'uso di ej con un esempio.
HTML Titolo di esempio EJS> head> Ciao,<%= name %>!h1> corpo> html>>
JavaScript // index.js const express = require('express'); const app = express(); const port = 3000; app.set('view engine', 'ejs'); app.get('/', (req, res) =>{ res.render('ciao', { nome: 'Geeks' }); }); app.listen(port, () => { console.log(`Il server è in esecuzione su http://localhost:${port}`); });> Passaggio per eseguire l'applicazione: Esegui l'applicazione utilizzando il comando seguente dalla directory root del progetto
node index.js>
Produzione: Il tuo progetto verrà mostrato nell'URL http://localhost:3000/
