Magic Translate vs. vue-i18n
vue-i18n est la bibliothèque i18n standard pour Vue, et @nuxtjs/i18n s'appuie sur cette bibliothèque pour Nuxt. Comme la plupart des bibliothèques i18n, elle utilise une touche pour chaque message et un ensemble de messages par langue. Magic Translate traduit directement le texte de tes modèles Vue, sans clé ni fichier de messages.
En un coup d'œil
| Magic Translate | vue-i18n | |
|---|---|---|
| Comment tu écris le texte | Tes propres mots, encadrés par <T> | Une touche pour chaque message, par exemple $t('cart.title') |
| Traductions | Traduction par IA, créée automatiquement | C'est toi ou tes traducteurs qui les rédigent |
| Fichiers de messages | Aucun | Une série de messages par langue |
| Nouvelles langues | Modifier le réglage language | Traduire chaque message dans la nouvelle langue |
| Changer de langue | Au moment de l'exécution, avec useLanguageSwitcher | Au moment de l'exécution, en modifiant les paramètres régionaux |
| Pluriels et mise en forme | Traduit dans le cadre de la phrase | Intégré, avec règles du pluriel et mise en forme des dates et des chiffres |
| Prix | Forfait gratuit, puis forfaits mensuels en fonction de l'utilisation | Open source et gratuit |
En quoi le code diffère-t-il
Avec vue-i18n, tu définis les messages pour chaque langue et tu y fais référence par clé :
// i18n.tsimport { createI18n } from 'vue-i18n';export const i18n = createI18n({locale: 'de',messages: {en: { cart: { title: 'Your shopping cart' } },de: { cart: { title: 'Ihr Warenkorb' } }}});
<h2>{{ $t('cart.title') }}</h2>
Avec Magic Translate, le texte reste dans le modèle :
<h2><T>Your shopping cart</T></h2>
Pour les attributs tels que les espaces réservés, utilise useTranslate :
<input :placeholder="t('Search products')" />
Quand choisir Magic Translate
- Tu veux ton application Vue dans de nombreuses langues sans gérer les messages pour chacune d'entre elles.
- Tu n'as pas de traducteurs ou tu souhaites publier des mises à jour sans attendre les traductions.
- Ton texte change souvent et tu veux que chaque langue soit à jour.
Quand choisir vue-i18n
- Tout le texte doit être traduit ou révisé par une personne.
- Tu as besoin de moteurs de recherche pour voir le code HTML traduit à partir du rendu du serveur Nuxt. Magic Translate pour Vue se traduit dans le navigateur.
- Tu veux une bibliothèque open source gratuite, sans service externe.
Passer de vue-i18n à Magic Translate
Tu peux changer de composant à la fois. Remplace $t('key') par le texte anglais de tes messages, encadré par <T>, ou utilise t() de useTranslate pour les attributs. Les deux bibliothèques peuvent fonctionner côte à côte pendant la migration. Le guide Vue montre la configuration.
Prête à l'essayer ? Suis le guide de démarrage pour traduire ton premier composant en cinq minutes.