Pose una domanda e ottieni un riassunto del documento facendo riferimento a questa pagina e al provider AI di tua scelta
Cronologia delle versioni
- "Add `intlayerHTML` plugin object; use `app.use(intlayerHTML)` instead of `app.use(installIntlayerHTML)`"v8.5.024/03/2026
- "spostare l'importazione da {{framework}}-intlayer a {{framework}}-intlayer/html"v8.5.024/03/2026
- "Aggiunta dell'utility HTMLRenderer / useHTMLRenderer / renderHTML"v8.0.022/01/2026
- "Aggiunto il supporto per il parsing HTML"v8.0.020/01/2026
Il contenuto di questa pagina è stato tradotto con un'IA.
Vedi l'ultima versione del contenuto originale in ingleseSe hai un’idea per migliorare questa documentazione, non esitare a contribuire inviando una pull request su GitHub.
Collegamento GitHub alla documentazioneCopia il Markdown del documento nella porta-documenti
Contenuto HTML / HTML in Intlayer
Intlayer supporta contenuti HTML, permettendoti di incorporare contenuti ricchi e strutturati all'interno dei tuoi dizionari. Questi contenuti possono essere renderizzati con tag HTML standard o sostituiti con componenti personalizzati a runtime.
Dichiarare contenuti HTML
Puoi dichiarare contenuti HTML usando la funzione html o semplicemente come stringa.
Usa la funzione html per dichiarare esplicitamente contenuti HTML. Questo garantisce che i tag standard siano mappati correttamente anche se il rilevamento automatico è disabilitato.
Copiare il codice nella clipboard
Se la stringa contiene tag HTML comuni (ad esempio, <p>, <div>, <strong>, ecc.), Intlayer la trasformerà automaticamente.
Copiare il codice nella clipboard
Importa contenuti HTML da file. Nota che attualmente la funzione file() restituisce una stringa, che verrà rilevata automaticamente come HTML se contiene tag.
Copiare il codice nella clipboard
Il nodo html()
La funzione html() è una nuova funzionalità di Intlayer v8 che consente di definire esplicitamente il contenuto HTML nei dizionari. Sebbene Intlayer sia spesso in grado di rilevare automaticamente il contenuto HTML, l'uso della funzione html() offre diversi vantaggi:
- Sicurezza dei tipi: La funzione
html()consente di definire le prop attese per i componenti personalizzati, offrendo un migliore completamento automatico e controllo dei tipi nel proprio editor. - Dichiarazione esplicita: Garantisce che una stringa venga sempre trattata come HTML, anche se non contiene tag HTML standard che attiverebbero il rilevamento automatico.
- Definizione di componenti personalizzati: È possibile passare un secondo argomento a
html()per definire i componenti personalizzati e i tipi di prop attesi.
Copiare il codice nella clipboard
Quando si utilizza il metodo .use() su un nodo HTML, i componenti forniti verranno controllati rispetto alla definizione fornita nella funzione html() (se disponibile).
Rendering dell'HTML
Il rendering può essere gestito automaticamente dal sistema di contenuti di Intlayer o manualmente utilizzando strumenti specializzati.
Rendering automatico (usando useIntlayer)
Quando accedi al contenuto tramite useIntlayer, i nodi HTML sono già pronti per il rendering.
I nodi HTML possono essere renderizzati direttamente come JSX. I tag standard funzionano automaticamente.
Copiare il codice nella clipboard
Usa il metodo .use() per fornire componenti personalizzati o sovrascrivere i tag:
Copiare il codice nella clipboard
In Vue, i contenuti HTML possono essere renderizzati usando il built-in component.
Copiare il codice nella clipboard
Usa .use() per le sovrascritture:
Copiare il codice nella clipboard
Svelte rende i nodi HTML come stringhe. Usa {@html} per renderizzarli.
Copiare il codice nella clipboard
Preact supporta i nodi HTML direttamente nel JSX.
Copiare il codice nella clipboard
Solid supporta i nodi HTML direttamente nel JSX.
Copiare il codice nella clipboard
Angular utilizza la direttiva [innerHTML] per renderizzare contenuti HTML.
Copiare il codice nella clipboard
Usa il metodo .use() per fornire componenti personalizzati o sovrascrivere i tag:
Copiare il codice nella clipboard
In Remix 3, i nodi HTML si risolvono in una stringa HTML. Inseriscila con la prop innerHTML di Remix JSX o con html.raw in una vista html-template.
Copiare il codice nella clipboard
Copiare il codice nella clipboard
Remix esegue l'escape dei valori interpolati per impostazione predefinita.innerHTMLehtml.rawsono i due meccanismi di esclusione, che è ciò di cui ha bisogno una stringa HTML.
Usa il metodo .use() per sovrascrivere i tag o mappare componenti personalizzati. Le sovrascritture sono funzioni che restituiscono una stringa HTML:
Copiare il codice nella clipboard
In Astro, i nodi HTML si risolvono in una stringa HTML. Inseriscila con la direttiva set:html nel template o con innerHTML in uno <script> client.
Copiare il codice nella clipboard
Copiare il codice nella clipboard
Astro esegue l'escape di{espressioni}per impostazione predefinita.set:htmlè il meccanismo di esclusione, che è ciò di cui ha bisogno una stringa HTML.
Usa il metodo .use() per sovrascrivere i tag o mappare componenti personalizzati. Le sovrascritture sono funzioni che restituiscono una stringa HTML:
Copiare il codice nella clipboard
Configurazione globale con HTMLProvider
Puoi configurare il rendering HTML a livello globale per l'intera applicazione. Questo è ideale per definire componenti personalizzati che dovrebbero essere disponibili in tutti i contenuti HTML.
Copiare il codice nella clipboard
Puoi anche utilizzare il tuo motore di rendering HTML:
Copiare il codice nella clipboard
Importare dinamicamente il tuo renderer HTML è un ottimo modo per ridurre le dimensioni del bundle della tua applicazione.
Copiare il codice nella clipboard
Puoi anche utilizzare il tuo motore di rendering HTML:
Copiare il codice nella clipboard
Importare dinamicamente il tuo renderer HTML è un ottimo modo per ridurre le dimensioni del bundle della tua applicazione.
Copiare il codice nella clipboard
Puoi anche utilizzare il tuo motore di rendering HTML:
Copiare il codice nella clipboard
Importare dinamicamente il tuo renderer HTML è un ottimo modo per ridurre le dimensioni del bundle della tua applicazione.
Copiare il codice nella clipboard
Puoi anche utilizzare il tuo motore di rendering HTML:
Copiare il codice nella clipboard
Importare dinamicamente il tuo renderer HTML è un ottimo modo per ridurre le dimensioni del bundle della tua applicazione.
Copiare il codice nella clipboard
Puoi anche utilizzare il tuo motore di rendering HTML:
Copiare il codice nella clipboard
Importare dinamicamente il tuo renderer HTML è un ottimo modo per ridurre le dimensioni del bundle della tua applicazione.
Copiare il codice nella clipboard
Puoi anche utilizzare il tuo motore di rendering HTML:
Copiare il codice nella clipboard
Importare dinamicamente il tuo renderer HTML è un ottimo modo per ridurre le dimensioni del bundle della tua applicazione.
Remix non ha un albero dei componenti per contenere un provider, quindi la configurazione viene installata una sola volta, come singleton, all'avvio del server. Configura il renderer restituito da useHTMLRenderer(). I nodi html restituiti da useIntlayer vengono renderizzati così come sono; sovrascrivi i loro tag per nodo con .use().
Copiare il codice nella clipboard
Usa installIntlayerHTMLDynamic(async () => …) per caricare il renderer in modo lazy; il loader viene eseguito solo alla prima chiamata.
Astro non ha un albero dei componenti per contenere un provider, quindi la configurazione viene installata una sola volta, come singleton, nel middleware (server) e in uno <script> client (browser). Configura il renderer restituito da useHTMLRenderer(). I nodi html restituiti da useIntlayer vengono renderizzati così come sono; sovrascrivi i loro tag per nodo con .use().
Copiare il codice nella clipboard
Usa installIntlayerHTMLDynamic(async () => …) per caricare il renderer in modo lazy; il loader viene eseguito solo alla prima chiamata.
Rendering manuale e strumenti avanzati
Se hai bisogno di renderizzare stringhe HTML grezze o di avere un controllo maggiore sulla mappatura dei componenti, usa i seguenti strumenti.
Componente <HTMLRenderer />
Esegui il rendering di una stringa HTML con componenti specifici.
Copiare il codice nella clipboard
Hook useHTMLRenderer()
Ottieni una funzione di rendering preconfigurata.
Copiare il codice nella clipboard
Utility renderHTML()
Utility standalone per il rendering al di fuori dei componenti.
Copiare il codice nella clipboard
Componente <HTMLRenderer />
Copiare il codice nella clipboard
Componente <HTMLRenderer />
Copiare il codice nella clipboard
Hook useHTMLRenderer()
Copiare il codice nella clipboard
Utility renderHTML()
Copiare il codice nella clipboard
Componente <HTMLRenderer />
Copiare il codice nella clipboard
Hook useHTMLRenderer()
Copiare il codice nella clipboard
Utility renderHTML()
Copiare il codice nella clipboard
Componente <HTMLRenderer />
Copiare il codice nella clipboard
Hook useHTMLRenderer()
Copiare il codice nella clipboard
Utility renderHTML()
Copiare il codice nella clipboard
Servizio IntlayerHTMLService
Renderizza una stringa HTML utilizzando il servizio.
Copiare il codice nella clipboard
Hook useHTMLRenderer()
Ottieni una funzione di rendering preconfigurata da installIntlayerHTML(). Restituisce una stringa HTML.
Copiare il codice nella clipboard
Utility renderHTML()
Utility autonoma che ignora la configurazione globale.
Copiare il codice nella clipboard
Hook useHTMLRenderer()
Ottieni una funzione di rendering preconfigurata da installIntlayerHTML(). Restituisce una stringa HTML.
Copiare il codice nella clipboard
Utility renderHTML()
Utility autonoma che ignora la configurazione globale.
Copiare il codice nella clipboard
Riferimento delle opzioni
Queste opzioni possono essere passate a HTMLProvider, HTMLRenderer, useHTMLRenderer, e renderHTML.
Apri la tabella in una finestra modale per visualizzare tutti i dati in modo chiaro
| Opzione | Tipo | Predefinito | Descrizione |
|---|---|---|---|
components | Record<string, any> | {} | Una mappa che associa tag HTML o nomi di componenti personalizzati ai componenti. |
renderHTML | Function | null | Una funzione di rendering personalizzata per sostituire completamente il parser HTML predefinito (provider Vue, Svelte, Remix e Astro). |
Nota: per React e Preact, i tag HTML standard sono forniti automaticamente. È necessario passare la prop components solo se si desidera sovrascriverli o aggiungere componenti personalizzati.