TacoTranslate izmantošana
Virkņu tulkošana
Pašlaik ir trīs veidi, kā tulkot virknes: Translate
komponents, useTranslation
hook, vai translateEntries
utilīta.
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, komponentā, izmantojot as="p"
.
Izmantojot useTranslation
hooku.
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 tekstus servera pusē. Uzlabojiet savus OpenGraph attēlus.
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 tulkotas virknes
Kad teksta virknes nonāk mūsu serveros, mēs vispirms tās pārbaudām un saglabājam, pēc tam uzreiz atgriežam mašīntulkojumu. Lai gan mašīntulkojumi parasti ir zemākas kvalitātes salīdzinājumā ar mūsu AI tulkojumiem, tie nodrošina ātru sākotnēju 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. Kad mākslīgā intelekta tulkojums būs gatavs, tas aizstās mašīntulkojumu un tiks nosūtīts ikreiz, kad pieprasīsiet jūsu virkņu tulkojumus.
Ja esat kādu virkni tulkojis manuāli, šie tulkojumi ir prioritāri un tiek atgriezti to vietā.
Izcelsmju izmantošana
TacoTranslate projekti satur to, ko mēs saucam par origins. Uzskatiet tos par ieejas punktiem, mapēm vai grupām jūsu virkņu un tulkojumu glabāšanai.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}
Avoti ļauj sadalīt virknes jēgpilnos konteineros. Piemēram, varat izmantot vienu avotu dokumentācijai un citu — mārketinga lapai.
Lai iegūtu sīkāku kontroli, jūs varat iestatīt origins komponenta līmenī.
Lai to panāktu, apsveriet izmantot vairākus TacoTranslate sniedzējus savā projektā.
Lūdzu, ņemiet vērā, ka viena un tā pati virkne var saņemt atšķirīgus tulkojumus dažādās izcelsmēs.
Galu galā, kā jūs sadalāt virknes pa avotiem, ir atkarīgs no jums un jūsu vajadzībām. Tomēr ņemiet vērā, ka daudzu virkņu ievietošana vienā avotā var palielināt ielādes laikus.
Mainīgo apstrāde
Vienmēr izmantojiet mainīgos dinamiskam saturam, piemēram, lietotāju vārdiem, datumiem, e-pasta adresēm un citām lietām.
Mainīgos tekstos deklarē, 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 renderē HTML saturu. Tomēr no šīs uzvedības varat atteikties, iestatot useDangerouslySetInnerHTML
uz false
.
Stingri ieteicams atspējot HTML renderēšanu, tulkojot neuzticamu saturu, piemēram, lietotāju radītu saturu.
Visi izvadi vienmēr tiek sanitizēti ar sanitize-html pirms renderēš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šējais piemērs tiks attēlots kā vienkāršs teksts.