TacoTranslate lietošana
Tulko teksta virknes
Pašlaik ir trīs veidi, kā tulkot virknes: Translate
komponents, useTranslation
āķis vai translateEntries
rīks.
Izmantojot Translate
komponentu.
Izvada tulkojumus span
elementā un atbalsta HTML renderēšanu.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}
Jūs varat mainīt elementa tipu, piemēram, izmantojot as="p"
komponentā.
Izmantojot useTranslation
hook.
Atgriež tulkojumus kā vienkāršu virkni. Noderīgi, piemēram, meta
tagos.
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>
);
}
Izmantojot translateEntries
utilītu.
Tulkojiet virknes servera pusē. Papildiniet savus OpenGraph attēlus ar jaudu.
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)
};
}
Kā tiek tulkoti virknes
Kad virknes sasniedz mūsu serverus, mēs vispirms tās pārbaudām un saglabājam, pēc tam nekavējoties atgriežam mašīntulkotu versiju. Lai gan mašīntulkojumi parasti ir zemākas kvalitātes salīdzinājumā ar mūsu AI tulkojumiem, tie nodrošina ātru sākotnējo atbildi.
Vienlaikus mēs uzsākam asinhronu tulkošanas uzdevumu, lai ģenerētu augstas kvalitātes, modernu mākslīgā intelekta tulkojumu jūsu virknei. Tiklīdz AI tulkojums būs gatavs, tas aizstās mašīntulkojumu un tiks nosūtīts katru reizi, kad pieprasīsiet tulkojumus savām virknēm.
Ja esat manuāli pārtulkojis virkni, šie tulkojumi ir prioritāri un tiek atgriezti tā vietā.
Izmantojot izcelsmes vietas
TacoTranslate projekti satur to, ko mēs saucam par izcelsmēm. Uzskatiet tās par ieejas punktiem, mapēm vai grupām jūsu tekstu virkņām un tulkojumiem.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}
Origins ļauj sadalīt virknes nozīmīgos konteineros. Piemēram, jums varētu būt viens origins dokumentācijai un cits mārketinga lapai.
Lai iegūtu sīkāku kontroli, jūs varētu iestatīt originus komponentu līmenī.
Lai to panāktu, apsveriet iespēju projektā izmantot vairākus TacoTranslate pakalpojumu sniedzējus.
Lūdzu, ņemiet vērā, ka tāds pats teksts var saņemt dažādas tulkojumus dažādos originos.
Galu galā, kā jūs sadalāt virknes originālos, ir atkarīgs no jums un jūsu vajadzībām. Tomēr ņemiet vērā, ka daudzu virkņu esamība vienā originālajā var palielināt ielādes laikus.
Mainīgo apstrāde
Jums vienmēr jāizmanto mainīgie dinamiskam saturam, piemēram, lietotāju vārdiem, datumiem, e-pasta adresēm un citiem.
Mainīgie virkņu tekstā tiek deklarēti, izmantojot dubultās iekavas, piemēram, {{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 satura pārvaldība
Pēc noklusējuma Translate
komponents atbalsta un atveido HTML saturu. Tomēr jūs varat atslēgt šo funkcionalitāti, iestatot useDangerouslySetInnerHTML
uz false
.
HTML atspējošana ir stingri ieteicama, tulkojot neuzticamu saturu, piemēram, lietotāju radītu saturu.
Visa izvade vienmēr tiek attīrīta ar sanitize-html pirms attēlošanas.
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}
/>
);
}
Iepriekšminētais piemērs tiks attēlots kā vienkāršs teksts.