TacoTranslate’i kasutamine
Stringide tõlkimine
Praegu on olemas kolm võimalust stringide tõlkimiseks: Translate
komponent, useTranslation
konks või translateEntries
utiliit.
Translate
komponendi kasutamine.
Väljundiks on tõlked span
elemendi sees ning toetab HTML-i renderdamist.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}
Saate komponendil muuta elemendi tüüpi, kasutades näiteks as="p"
.
useTranslation
hooki kasutamine.
Tagastab tõlked tavalise tekstina. Kasulik näiteks meta
siltides.
import {useEffect} from 'react';
import {useTranslation} from 'tacotranslate/react';
function Page() {
const helloWorld = useTranslation('Hello, world!');
useEffect(() => {
alert(helloWorld);
}, [helloWorld]);
return (
<title>{useTranslation('My page title')}</title>
);
}
translateEntries
utiliidi kasutamine.
Pane serveri poolel tekstid tõlkima. Andke oma OpenGraph piltidele lisavõimsust.
import {createEntry, translateEntries} from 'tacotranslate';
async function generateMetadata(locale = 'es') {
const title = createEntry({string: 'Hello, world!'});
const description = createEntry({string: 'TacoTranslate on the server'});
const translations = await translateEntries(
tacoTranslate,
{origin: 'opengraph', locale},
[title, description]
);
return {
title: translations(title),
description: translations(description)
};
}
Kuidas stringe tõlgitakse
Kui stringid jõuavad meie serveritesse, valideerime ja salvestame need esmalt ning tagastame kohe masina tõlke. Kuigi masina tõlked on üldiselt meie tehisintellekti tõlgetest madalama kvaliteediga, pakuvad need kiiret esmast vastust.
Samas käivitame asünkroonse tõlkimisülesande, et luua teie stringi jaoks kõrgekvaliteediline, tipptasemel AI-tõlge. Kui AI-tõlge on valmis, asendab see masintõlget ja saadetakse, kui te küsite oma stringide tõlkeid.
Kui olete stringi käsitsi tõlkinud, võtavad need tõlked precedentsi ja neid tagastatakse selle asemel.
Päritolude kasutamine
TacoTranslate projektid sisaldavad seda, mida me nimetame origins-ideks. Mõelge neile kui sisenemispunktidele, kaustadele või rühmadele teie stringide ja tõlgete jaoks.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}
Algallikad võimaldavad teil eraldada tekstid tähenduslikesse konteineritesse. Näiteks võiksite omada üht algallikat dokumentatsiooni jaoks ja teist oma turunduslehe jaoks.
Täpsema juhtimise jaoks võiksite seadistada originaalid komponendi tasemel.
Selle saavutamiseks kaalu mitme TacoTranslate pakkuja kasutamist oma projektis.
Palun pange tähele, et sama string võib saada erinevates algallikates erinevaid tõlkeid.
Lõppkokkuvõttes sõltub stringide eraldamine originiteks sinust ja sinu vajadustest. Kuid pane tähele, et paljude stringide omamine ühes originis võib suurendada laadimisaegu.
Muutujate haldamine
Dünaamilise sisu jaoks, nagu kasutajanimed, kuupäevad, e-posti aadressid ja muu, tuleks alati kasutada muutujaid.
Muutujad stringides deklareeritakse kasutades topeltjada, näiteks {{variable}}
.
import {Translate} from 'tacotranslate/react';
function Greeting() {
const name = 'Juan';
return <Translate string="Hello, {{name}}!" variables={{name}} />;
}
import {useTranslation} from 'tacotranslate/react';
function useGreeting() {
const name = 'Juan';
return useTranslation('Hello, {{name}}!', {variables: {name}});
}
HTML-sisu haldamine
Vaikimisi toetab ja renderdab Translate
komponent HTML-sisu. Kuid saate sellest käitumisest loobuda, määrates useDangerouslySetInnerHTML
väärtuseks false
.
HTML-i renderdamise keelamine on tugevalt soovitatav, kui tõlgitakse usaldamatut sisu, näiteks kasutajate loodud sisu.
Kõik väljundid puhastatakse enne kuvamist alati sanitize-html abil.
import {Translate} from 'tacotranslate/react';
function Page() {
return (
<Translate
string={`
Welcome to <strong>my</strong> website.
I’m using <a href="{{url}}">TacoTranslate</a> to translate text.
`}
variables={{url: 'https://tacotranslate.com'}}
useDangerouslySetInnerHTML={false}
/>
);
}
Ülaltoodud näide kuvatakse tavalise tekstina.