TacoTranslate istifadəsi
Sətirlərin tərcüməsi
Hal-hazırda sətirləri tərcümə etməyin üç yolu var: Translate
komponenti, useTranslation
hook-u, və ya translateEntries
utiliti.
Translate
komponentindən istifadə.span
elementi daxilində tərcümələri çıxarır və HTML-in göstərilməsini dəstəkləyir.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}
Element növünü, məsələn, komponentdə as="p"
istifadə edərək dəyişə bilərsiniz.
useTranslation
hook-dan istifadə.
Tərcüməni sadə mətn kimi qaytarır. Məsələn, meta
teqlərində faydalıdır.
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
vasitəsini istifadə etmək.
Simləri server tərəfdə tərcümə edin. OpenGraph şəkillərinizi gücləndirin.
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)
};
}
Sətirlər necə tərcümə olunur
Sətirlər serverlərimizə çatdıqda, əvvəlcə onları yoxlayır və saxlayırıq, sonra dərhal maşın tərcüməsini qaytarırıq. Maşın tərcümələri ümumiyyətlə bizim süni intellekt tərcümələrimizə nisbətən daha aşağı keyfiyyətdə olsa da, sürətli ilkin cavab təmin edir.
Eyni zamanda, sizin mətniniz üçün yüksək keyfiyyətli, ən müasir AI tərcüməsini yaratmaq üçün asinxron tərcümə işi başlatırıq. AI tərcüməsi hazır olduqda, o, maşın tərcüməsinin yerini alacaq və mətnləriniz üçün tərcümə tələb etdiyiniz zaman göndəriləcək.
Əgər siz bir sətri əl ilə tərcümə etmisinizsə, həmin tərcümələr üstünlük təşkil edir və onlar qaytarılır.
Mənbələrdən istifadə etmək
TacoTranslate layihələri bizim origin adlandırdığımız şeyi ehtiva edir. Onları sətirləriniz və tərcümələriniz üçün giriş nöqtələri, qovluqlar və ya qruplar kimi düşünün.
import {TacoTranslate} from 'tacotranslate/react';
function Menu() {
return (
<TacoTranslate origin="application-menu">
// ...
</TacoTranslate>
);
}
Mənbələrə mətnləri məna daşıyan konteynerlərə ayırmağa imkan verir. Məsələn, sənədlər üçün bir mənbə, marketinq səhifəniz üçün isə başqa bir mənbə ola bilər.
Daha incə nəzarət üçün, kökləri komponent səviyyəsində təyin edə bilərsiniz.
Bunu həyata keçirmək üçün layihənizdə bir neçə TacoTranslate təminatçısından istifadə etməyi nəzərdən keçirin.
Xahiş edirik nəzərə alın ki, eyni sətir müxtəlif mənbələrdə fərqli tərcümələr ala bilər.
Nəhayət, sətirləri necə ayrı-ayrı originlərə bölmək sizin və ehtiyaclarınızdan asılıdır. Lakin yadda saxlayın ki, bir origin daxilində çoxsaylı sətirlərin olması yüklənmə vaxtını artıra bilər.
Dəyişənlərlə işləmək
Dinamik məzmun üçün, məsələn, istifadəçi adları, tarixlər, e-poçt ünvanları və s. üçün həmişə dəyişənlərdən istifadə etməlisiniz.
Sətirlərdə dəyişənlər cüt mötərizədə elan olunur, məsələn {{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 məzmununun idarə edilməsi
Defolt olaraq, Translate
komponenti HTML məzmununu dəstəkləyir və göstərir. Lakin, bu davranışdan imtina etmək üçün useDangerouslySetInnerHTML
parametresini false
olaraq təyin edə bilərsiniz.
İstifadəçi tərəfindən yaradılmış məzmun kimi etibarsız məzmun tərcümə edilərkən HTML renderlənməsinin deaktiv edilməsi şiddətlə tövsiyə olunur.
Bütün çıxışlar göstərilməzdən əvvəl həmişə sanitize-html ilə təmizlənir.
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}
/>
);
}
Yuxarıdakı nümunə sadə mətn kimi göstəriləcək.