Docs / Lit
Localisation Lit, automatisée
Localisez les composants web Lit : le texte dans les modèles html`` devient des appels à t(), et un I18nController rerend les composants lorsque la langue change.
Comment ça marche
Le texte et ${expressions} dans les modèles html templates become ${t('key')}, and attributes placeholder=${t('key')}`. Les modèles imbriqués, styles et commentaires sont laissés intacts.
Avant et après
La sortie réelle du moteur pour ce fichier. Lors d'une exécution réelle, le modèle hébergé nomme les clés à partir du contexte.
import { LitElement, html } from 'lit';
export class CartPanel extends LitElement {
name = 'Ada';
render() {
return html`<h2>Hi ${this.name}, your basket</h2><input placeholder="Search products" />`;
}
}import { LitElement, html } from 'lit';
export class CartPanel extends LitElement {
name = 'Ada';
render() {
return html`<h2>Hi ${this.name}, your basket</h2><input placeholder="Search products" />`;
}
}{}Ce que l'installation ajoute
La première exécution configure un module src/i18n généré si le projet ne l'a pas encore :
src/i18n.tsavect(),setLanguage()etI18nController- Un
I18nControllerdans chaque composant, pour qu'il se rerende lors d'un changement de langue
Exécutez-le
L'interface CLI nécessite Node.js 22 ou une version ultérieure.
npm install --save-dev localize-dev
npx localize-dev login
# Preview, then write the changes
npx localize-dev run --dry-run -l es,fr,de
npx localize-dev run -l es,fr,de
# Or open a pull request instead
npx localize-dev pr -l es,fr,deOu ajoutez le Action GitHub et recevez une pull request à chaque push. Essayez-le d'abord sur votre propre code dans le playground.