Documentation

API JavaScript

Tu peux également utiliser le client Magic Translate directement dans tes scripts pour traduire des chaînes et changer de langue.

Obtenir l'instance

Avec la balise script, l'instance est créée une fois la page chargée et est disponible sous le nom window.magicTranslate. Pour l'utiliser dès qu'il sera prêt, écoute l'événement magictranslate:ready :

document.addEventListener('magictranslate:ready', (event) => {
const magicTranslate = event.detail;
});

Avec npm, createMagicTranslate renvoie l'instance.

Traduire en code

Pour traduire une chaîne, appelle translate. Cela renvoie une promesse.

const message = await magicTranslate.translate('Your order has been placed');
// with options
const formal = await magicTranslate.translate('How are you?', {
lang: 'fr',
formality: 'formal'
});

Sans l'option lang, le texte est traduit dans la langue actuelle. Avec un id, tu peux modifier cette utilisation du texte de ta propre initiative.

Les valeurs qui ne doivent pas être traduites figurent dans v, référencé $name. Le texte est traduit une fois sous forme de modèle et mis en cache, quelles que soient les valeurs :

const message = await magicTranslate.translate('Your order $id has shipped', {
v: { id: order.id }
});

La langue actuelle

Lis la langue actuelle avec magicTranslate.language. Utilise setLanguage pour le modifier et traduire à nouveau la page, ou onLanguageChange pour lancer un rappel chaque fois que la langue change :

magicTranslate.setLanguage('fr');
const unsubscribe = magicTranslate.onLanguageChange((language) => {
document.documentElement.lang = language;
});

Arrêt

destroy arrête de traduire la page. Le contenu déjà traduit reste traduit.

magicTranslate.destroy();