TacoTranslate-ի օգտագործում
Տողերի թարգմանում
Ներկայումս կան երեք եղանակ՝ տողերը թարգմանելու համար՝ Translate
կոմպոնենտը, useTranslation
hook‑ը կամ translateEntries
գործիքը։
Translate
բաղադրիչի օգտագործումը.
Թարգմանությունները արտածվում են span
էլեմենտի ներսում, և այն աջակցում է HTML-ի ցուցադրմանը.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}
Դուք կարող եք փոխել էլեմենտի տեսակը՝ օրինակ՝ կոմպոնենտի վրա as="p"
օգտագործելով։
useTranslation
հուկի օգտագործում.
Վերադարձնում է թարգմանությունները որպես պարզ տող։ Օգտակար է, օրինակ, meta
թեգերի համար։
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
գործիքի օգտագործում։
Թարգմանեք տողերը սերվերի կողմում։ Հզորացրեք ձեր OpenGraph պատկերները։
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)
};
}
Ինչպես են տողերը թարգմանվում
Երբ տողերը հասնում են մեր սերվերներին, մենք առաջին հերթին ստուգում և պահպանում ենք դրանք, ապա անմիջապես վերադարձնում ենք մեքենայական թարգմանությունը։ Մեքենայական թարգմանությունները սովորաբար մեր ԱԻ-թարգմանությունների համեմատ ցածր որակի են, սակայն դրանք ապահովում են արագ նախնական պատասխան։
Միաժամանակ մենք սկսում ենք անհամաժամ թարգմանական աշխատանք՝ ձեր տողի համար բարձրորակ, առաջադեմ AI-թարգմանություն պատրաստելու համար։ Երբ AI-թարգմանությունը պատրաստ լինի, այն կփոխարինի մեքենայական թարգմանությանը և կուղարկվի ամեն անգամ, երբ դուք խնդրեք ձեր տողերի թարգմանությունները։
Եթե դուք ձեռքով թարգմանել եք որևէ տող, այդ թարգմանությունները առաջնային են և դրանք են վերադարձվում։
Աղբյուրների օգտագործում
TacoTranslate նախագծերը պարունակում են այն, ինչ մենք կոչում ենք օրիգիններ. Մտածեք դրանք որպես ձեր տողերի և դրանց թարգմանությունների համար նախատեսված մուտքի կետեր, թղթապանակներ կամ խմբեր.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}
Ծագումները թույլ են տալիս առանձնացնել տողերը իմաստալից կոնտեյներների մեջ։ Օրինակ՝ դուք կարող եք ունենալ մեկ ծագում փաստաթղթավորման համար և մեկ այլ՝ ձեր շուկայավարման էջի համար։
Ավելին՝ ավելի մանրակրկիտ վերահսկողության համար դուք կարող եք origins-ները սահմանել կոմպոնենտի մակարդակում։
Սա իրականացնելու համար ձեր նախագծում դիտարկեք մի քանի TacoTranslate պրովայդերներ օգտագործել։
Խնդրում ենք նկատի ունենալ, որ նույն տողը կարող է տարբեր թարգմանություններ ստանալ տարբեր աղբյուրներում։
Վերջիվերջո՝ թե ինչպես եք տողերը բաժանում սկզբնաղբյուրների մեջ՝ կախված է ձեզնից և ձեր կարիքներից։ Սակայն նկատեք, որ շատ տողերի առկայությունը նույն սկզբնաղբյուրում կարող է մեծացնել բեռման ժամանակները։
Փոփոխականների կառավարում
Դինամիկ բովանդակության համար միշտ պետք է օգտագործել փոփոխականներ, օրինակ՝ օգտատերերի անուններ, ամսաթվեր, էլփոստի հասցեներ և այլն։
Տողերի մեջ փոփոխականները հայտարարվում են կրկնակի փակագծերով, օրինակ՝ {{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 բովանդակության կառավարում
Ըստ լռության, Translate
կոմպոնենտը սատարում և ցուցադրում է HTML բովանդակությունը։ Այնուամենայնիվ, կարող եք այդ վարքից հրաժարվել՝ useDangerouslySetInnerHTML
սահմանելով false
։
Երբ թարգմանում եք չվստահելի բովանդակություն, օրինակ՝ օգտատերերի կողմից ստեղծված բովանդակությունը, խստորեն խորհուրդ է տրվում անջատել HTML-ի ցուցադրումը։
Ցուցադրվելուց առաջ բոլոր ելքերը միշտ մաքրվում են sanitize-html-ով։
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}
/>
);
}
Վերը նշված օրինակն կցուցադրվի որպես պարզ տեքստ.