Pose una domanda e ottieni un riassunto del documento facendo riferimento a questa pagina e al provider AI di tua scelta
Questo documento non è aggiornato, la versione base è stata aggiornata il 25 giugno 2026.
Vai alla documentazione in ingleseCronologia delle versioni
- "Inizializzazione della documentazione"v8.0.021/01/2026
Il contenuto di questa pagina è stato tradotto con un'IA.
Vedi l'ultima versione del contenuto originale in ingleseIf you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy doc Markdown to clipboard
Documentazione del plugin Vite intlayer
Il plugin Vite intlayer integra la configurazione di Intlayer nel processo di build. Gestisce gli alias dei dizionari, avvia il watcher dei dizionari in modalità sviluppo e prepara i dizionari per la build.
Utilizzo
Copiare il codice nella clipboard
// vite.config.tsimport { defineConfig } from "vite";import { intlayer } from "vite-intlayer";ts;export default defineConfig({ plugins: [intlayer()],});Opzioni
Copiare il codice nella clipboard
import type { IntlayerPluginOptions } from "vite-intlayer";IntlayerPluginOptions estende GetConfigurationOptions (vedi @intlayer/config) con i seguenti campi aggiuntivi:
Apri la tabella in una finestra modale per visualizzare tutti i dati in modo chiaro
| Opzione | Tipo | Default | Descrizione |
|---|---|---|---|
compatCallers | CompatCallerConfig[] | [] | Pattern di caller aggiuntivi per i package compat-adapter (es. @intlayer/react-i18next). Passati all'analizzatore di utilizzo dei campi al momento della build. |
proxy | { ignore?: (req) => boolean } | undefined | Opzioni inoltrate al proxy di locale-routing incluso. Usa ignore per escludere percorsi specifici (es. rotte API) dal locale routing. |
Tutte le altre opzioni (override, configFile, …) sono inoltrate direttamente a getConfiguration().
Esempi
Ignora le rotte API dal routing locale
Copiare il codice nella clipboard
// vite.config.tsimport { defineConfig } from "vite";import { intlayer } from "vite-intlayer";export default defineConfig({ plugins: [ intlayer({ proxy: { ignore: (req) => req.url?.startsWith("/api"), }, }), ],});Con un percorso file di configurazione personalizzato
Copiare il codice nella clipboard
export default defineConfig({ plugins: [ intlayer({ configFile: "./config/intlayer.config.ts", }), ],});Con caller compat-adapter
Copiare il codice nella clipboard
import { intlayer } from "vite-intlayer";import { reactI18nextCallerConfig } from "@intlayer/react-i18next/plugin";export default defineConfig({ plugins: [ intlayer({ compatCallers: [reactI18nextCallerConfig], }), ],});Cosa fa il plugin
1. Preparazione del dizionario
Prima che il build inizi (e una volta all'ora in dev), intlayer chiama prepareIntlayer per compilare tutti i file .content.ts in dizionari JSON ottimizzati memorizzati in .intlayer/.
2. Alias di moduli
Il plugin aggiunge alias di risoluzione Vite in modo che import { myDict } from 'intlayer/dictionaries/my-dict' si risolva nel file JSON compilato su disco. Le build SSR utilizzano ssr.noExternal per assicurare che tutti i pacchetti @intlayer/* siano raggruppati con gli alias applicati.
3. Dev-server watcher
In development mode a chokidar watcher is started. When a .content.ts file changes the dictionaries are recompiled and Vite's HMR propagates the update to the browser.
4. Proxy di routing delle locale bundled (v9+)
Da Intlayer v9 il middleware intlayerProxy viene registrato automaticamente all'interno di intlayer(). Gestisce:
- Rilevamento della locale dal prefisso URL, dai cookie e dall'header
Accept-Language. - Reindirizzamenti 301 quando la locale rilevata non corrisponde all'URL corrente.
- Riscritture URL interne in modo che il framework veda il corretto parametro di route
[locale].
Il proxy è controllato da routing.enableProxy (valore predefinito true) nella tua configurazione Intlayer. Per disabilitarlo completamente:
Copiare il codice nella clipboard
// intlayer.config.tsimport { defineConfig } from "intlayer";export default defineConfig({ routing: { enableProxy: false },});Per personalizzare il comportamento del proxy senza una chiamata intlayerProxy() separata, passa le opzioni proxy al plugin principale:
Copiare il codice nella clipboard
intlayer({ proxy: { ignore: (req) => req.url?.startsWith("/api") } });Consulta la documentazione intlayerProxy per il riferimento completo del comportamento di routing.
5. Compiler integrato (v9+)
Quando compiler.enabled è true e compiler.output è impostato nella configurazione di Intlayer, intlayer() registra intlayerCompiler automaticamente. Il compiler estrae le dichiarazioni di contenuto inline scritte direttamente nei file dei componenti e le scrive nei dizionari durante la trasformazione. Vedi la documentazione di intlayerCompiler.
6. Ottimizzazioni della build
Durante una build di produzione il plugin aggiunge:
- intlayerOptimize – trasformazione Babel che riscrive
useIntlayer('key')→useDictionary(hash)e inietta importazioni JSON dirette. - intlayerPrune – rimuove i campi di contenuto inutilizzati dal JSON del dizionario.
- intlayerMinify – compatta il JSON del dizionario e facoltativamente offusca i nomi dei campi.
Questi sono inattivi in modalità di sviluppo.
Alias deprecati
Apri la tabella in una finestra modale per visualizzare tutti i dati in modo chiaro
| Esportazione deprecata | Sostituzione |
|---|---|
intlayerPlugin | intlayer |
intLayerPlugin | intlayer |