TacoTranslate lietošana
Virkņu tulkošana
Pašlaik ir trīs veidi, kā tulkot virknes: Translate komponents, useTranslation hook vai translateEntries palīgfunkcija.
Izmantojot Translate komponentu.
Izvada tulkojumus span elementā un atbalsta HTML attēlošanu.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}Elementa tipu var mainīt, piemēram, izmantojot as="p" komponentā.
Izmantojot useTranslation hooku.
Atgriež tulkojumus kā vienkāršu virkni. Noderīgs, 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 utilītu translateEntries.
Virkņu tulkošana 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 tulkoti teksti
Kad virknes nonāk mūsu serveros, mēs tās vispirms pārbaudām un saglabājam, pēc tam nekavējoties atgriežam mašīntulkojumu. Lai gan mašīntulkojumi parasti ir zemākas kvalitātes nekā mūsu AI tulkojumi, 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 katru reizi, kad pieprasīsiet tulkojumu jūsu virknei.
Ja esat manuāli pārtulkojis virkni, šie tulkojumi tiek izmantoti prioritārā kārtā un tiek atgriezti.
Izcelsmju izmantošana
TacoTranslate projekti ietver to, ko mēs saucam par avotiem. Uzskatiet tos par ieejas punktiem, mapēm vai grupām, kuros glabājat virknes un to tulkojumus.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}Avoti ļauj jums sadalīt virknes jēgpilnās grupās. Piemēram, vienu avotu varat izmantot dokumentācijai, bet citu — jūsu mārketinga lapai.
Lai iegūtu sīkāku kontroli, jūs varētu iestatīt originus komponenta līmenī.
Lai to panāktu, apsveriet izmantot vairākus TacoTranslate sniedzējus savā projektā.
Ņemiet vērā, ka tas pats teksts dažādās originās var saņemt atšķirīgus tulkojumus.
Galu galā tas, kā jūs sadalāt virknes starp dažādiem avotiem, ir atkarīgs no jums un jūsu vajadzībām. Tomēr ņemiet vērā, ka, ja vienā avotā ir daudz virkņu, tas 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 citiem.
Virknēs esošie mainīgie 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īšana
Pēc noklusējuma Translate komponents atbalsta un attēlo HTML saturu. Tomēr no šīs uzvedības var atteikties, iestatot useDangerouslySetInnerHTML uz false.
Stingri ieteicams izslēgt HTML renderēšanu, tulkojot neuzticamu saturu, piemēram, lietotāju ģenerētu saturu.
Visi izvadi vienmēr tiek attīrīti ar sanitize-html, pirms tie tiek renderēti.
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.