TacoTranslate istifadə etmək
Sətirlərin tərcüməsi
Hazırda mətnlə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 render edilməsini dəstəkləyir.
import {Translate} from 'tacotranslate/react';
function Page() {
return <Translate string="Hello, world!" />;
}
Məsələn, komponentə as="p"
istifadə edərək element növünü dəyişə bilərsiniz.
useTranslation
hook-dan istifadə.
Tərcümələri 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.
Simvol zəncirlərini 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)
};
}
Simvolların necə tərcümə olunduğu
Sətirlər serverlərimizə çatdıqda, əvvəlcə onları təsdiqləyir və saxlayırıq, sonra dərhal bir maşın tərcüməsini qaytarırıq. Maşın tərcümələri adətən bizim AI tərcümələrimizlə müqayisədə keyfiyyətcə aşağı olsa da, onlar sürətli ilkin cavab təmin edir.
Eyni zamanda, sətiriniz üçün yüksək keyfiyyətli, ən müasir süni intellekt tərcüməsi yaratmaq məqsədilə asinxron tərcümə işi başlayırıq. Süni intellekt tərcüməsi hazır olduqda, o, maşın tərcüməsinin yerini tutacaq və siz sətirləriniz üçün tərcümə tələb etdiyiniz zaman göndəriləcək.
Əgər bir sətiri əl ilə tərcümə etmisinizsə, həmin tərcümələr üstünlük təşkil edir və onların nəticəsi qaytarılır.
Mənbələrdən istifadə etmək
TacoTranslate layihələri originlər adlandırdığımız şeyi ehtiva edir. Onları sizin 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>
);
}
Origins sizə mətnləri mənalı qutulara ayırmağa imkan verir. Məsələn, sənədlər üçün bir origin, marketinq səhifəniz üçün isə başqa bir origin ola bilər.
Daha detallı nəzarət üçün, komponent səviyyəsində origins qura bilərsiniz.
Buna nail olmaq üçün layihənizdə bir neçə TacoTranslate təminatçısından istifadə etməyi nəzərdən keçirin.
Zəhmət olmasa nəzərə alın ki, eyni sətir müxtəlif originlərdə fərqli tərcümələr ala bilər.
Nəhayət, sətirləri mənşələrə necə ayırmağınız sizin və ehtiyaclarınızdan asılıdır. Lakin, qeyd etmək lazımdır ki, bir mənşədə çoxlu sətir olması yükləmə vaxtını artıra bilər.
Dəyişənlərin idarə edilməsi
Dinamik məzmun, 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ələr istifadə olunmaqla elan edilir, 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ə olunması
Defolt olaraq, Translate
komponenti HTML məzmununu dəstəkləyir və göstərir. Lakin, bu davranışdan çıxmaq üçün useDangerouslySetInnerHTML
parametrini false
olaraq təyin edə bilərsiniz.
İstifadəçi tərəfindən yaradılan məzmun kimi etibarsız məzmun tərcümə edilərkən HTML renderlənməsinin söndürülməsi şiddətlə tövsiyə olunur.
Bütün çıxış həmişə göstərilməzdən əvvəl 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.