Pose una domanda e ottieni un riassunto del documento facendo riferimento a questa pagina e al provider AI di tua scelta
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
Hook useRewriteURL
Il hook useRewriteURL per SolidJS è progettato per gestire le riscritture di URL localizzate lato client. Corregge automaticamente l'URL del browser alla sua versione localizzata "prettier" in base alla locale corrente e alla configurazione in intlayer.config.ts.
Utilizzando window.history.replaceState, evita navigazioni ridondanti del Solid Router.
Utilizzo
Invoca il hook all'interno di un componente che fa parte della tua applicazione.
Come funziona
- Rilevamento: L'hook utilizza
createEffectper monitorare i cambiamenti nella reattivalocale(). - Corrispondenza: Identifica se l'attuale
window.location.pathnamecorrisponde a una route canonica che ha un alias localizzato più leggibile per la lingua corrente. - Correzione dell'URL: Se viene trovato un alias più leggibile, l'hook chiama
window.history.replaceStateper aggiornare la barra degli indirizzi senza influire sullo stato di navigazione interno o causare il re-render dei componenti.
Perché usarlo?
- URL autorevoli: Impone un unico URL per ogni versione localizzata dei tuoi contenuti, cosa cruciale per la SEO.
- Comodità per lo sviluppatore: Ti permette di mantenere le definizioni delle route interne canoniche pur esponendo al mondo esterno percorsi localizzati e user-friendly.
- Coerenza: Corregge gli URL quando gli utenti digitano manualmente un percorso che non rispetta le regole di localizzazione preferite.